asp.net和json的應用例項
現在asp.net也是最為流行的後臺語言之一,又由於json是當前最為流行的資料傳輸格式之一。
所以處理JSON格式資料也是實際應用中比較常見的,下面就分享一段實現此功能的程式碼例項,希望能夠給需要的朋友帶來幫助。
程式碼例項:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> $(document).ready(function () { $.ajax({ type: "get", dataType: "json", url: "demo/ajax/net/Handler.ashx", success: function (msg) { var data = msg.table; $.each(data, function (i, n) { var row = $("#template").clone(); row.find("#userID").text(n.ID); row.find("#nameID").text(n.username); row.find("#ageID").text(n.age); row.find("#addressID").text(n.address); row.find("#scoreID").text(n.score); row.appendTo("#data");//新增到模板的容器中 }); } }); }) </script> </head> <body> <div> <div> <ul id="data"> <li id="template"> <span id="userID">使用者ID</span> <span id="nameID">姓名</span> <span id="ageID">年齡</span> <span id="addressID">地址</span> <span id="scoreID">分數</span> </li> </ul> </div> </div> </body> </html>
上面的是前端的執行測試程式碼,比較簡單,就是一個ajax請求,然後對資料進行遍歷操作。
下面是後臺處理的.net程式碼,如下:
[C#] 純文字檢視 複製程式碼using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Text; using System.Configuration; using System.Data.OleDb; using System.Data; namespace ajax { /// <summary> /// Handler 的摘要說明 /// </summary> public class Handler : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; //不讓瀏覽器快取 context.Response.Buffer = true; context.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); context.Response.AddHeader("pragma", "no-cache"); context.Response.AddHeader("cache-control", ""); context.Response.CacheControl = "no-cache"; string result = ""; result = GetPageData(); context.Response.Write(result); } private string GetPageData() { string connString=ConfigurationManager.ConnectionStrings["access_con"].ConnectionString; string configPath=ConfigurationManager.ConnectionStrings["access_path"].ConnectionString; string conPath = HttpContext.Current.Server.MapPath(configPath); OleDbConnection conn = new OleDbConnection(connString + conPath); string sql = "select * from code order by id asc"; OleDbDataAdapter da = new OleDbDataAdapter(sql, conn); DataTable dt = new DataTable("table"); da.Fill(dt); return DataTable2Json(dt); } private string DataTable2Json(DataTable dt) { StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\""); jsonBuilder.Append(dt.TableName); jsonBuilder.Append("\":["); for (int i = 0; i < dt.Rows.Count; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows<i>[j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]"); jsonBuilder.Append("}"); return jsonBuilder.ToString(); } public bool IsReusable { get { return false; } } } }
上面的是.net的後臺處理程式碼,懂.net應該能夠輕鬆看懂。
需要特別注意的是,這裡採用了一種模版技術的效果,就是通過對應的id值繫結資料,這樣的話,只要id值不變,前臺無論怎麼修改結構或者樣式,都不會影響資料的顯示,這可以說是一大便利之處。
為了方便感興趣的朋友分析程式碼,完整程式碼下載(帶有資料庫):
相關文章
- php和json的應用例項PHPJSON
- jQuery的ajax和json使用例項jQueryJSON
- ”innerHTML“的應用例項HTML
- onfocus和onblur應用程式碼例項
- dd應用例項
- Cookie、localStorage 和 sessionStorage 的區別及應用例項CookieSession
- hive應用例項1Hive
- 智慧Web應用例項Web
- calico docker 應用例項Docker
- ORACLE外部表的應用例項Oracle
- 叢集的應用例項(zt)
- jquery裡操作json相關的方法和例項jQueryJSON
- json例項練習 json物件JSON物件
- findmnt 命令的八個應用例項
- localStorage應用程式碼例項
- sqoop應用例項1OOP
- table表格的thead、tbody和tfoot應用程式碼例項
- [全程建模]設計模型和UML應用中的例項分析模型
- NCF的Dapr應用例項的執行
- JSON Schema 校驗例項JSON
- face_recognition的5個應用例項
- 大資料應用的真例項子大資料
- 基於規則的應用例項——流
- 關於 Angular 應用 Components 和 Directives 的例項化問題Angular
- WebSocket 簡介及應用例項Web
- 機器視覺應用例項視覺
- redis應用場景及例項Redis
- python幾個應用例項Python
- opacity應用程式碼例項
- 基本複製應用例項(轉)
- ssh+json開發例項JSON
- JSON.parse()程式碼例項JSON
- 一個小應用的dbcp和c3p0配置例項
- 網路爬蟲(四)Opener與Handler的介紹和例項應用爬蟲
- vim的正規表示式(二)應用例項
- 再談應用程式的例項問題 (轉)
- 資料庫中的XML應用例項 (轉)資料庫XML
- 模板與例項在系統中的應用