Json在asp.net開發中的應用

來源:互聯網
上載者:User

標籤:des   style   blog   color   io   os   ar   for   sp   

一、asp.net後台返回Json資料,前台js解析

在後台讀取資料,並手動封裝成Json格式:

        public ContentResult getUsersByOrgId(int Id)        {            DataTable table = UsersLogic.getUsersByOrgId(Id);            StringBuilder data = new StringBuilder();            foreach (DataRow row in table.Rows)            {                data.Append(",{");                data.Append("\"UserId\":\"" + row["UserId"] + "\",");                data.Append("\"UserName\":\"" + row["UserName"] + "\"");                data.Append("}");            }            if (data.Length > 0)                data = data.Remove(0, 1);            string result = "{\"items\":[" + Convert.ToString(data) + "]}";            return Content(result, "application/json");        }

在前台用js解析,並展示到頁面:

    function GetOrgUsers(Id) {        $.post("/StockManage/Ware/getUsersByOrgId", { Id: Id }, function (data) {             var rJson = JSON.parse(JSON.stringify(data));  //轉為josn資料            if (rJson != "" && rJson != null && rJson != "undefined") {                var htmlData = "";                for (m = 0; m < rJson.items.length; m++) {                    var uid = rJson.items[m]["UserId"];                    var uname = rJson.items[m]["UserName"];                    htmlData += "<option value=‘" + uid + "‘>" + uname + "</options>";                }                $("#Select").html(htmlData);            }            return;        });    }
二、js封裝Json資料,傳給後台解析

js封裝Json數組:

        var arr = [];            var jsonObj = {};            jsonObj.UserId= 2;            jsonObj.UserName= "Hellow World!";            jsonObj.Phone= "10086100101";            arr.push(jsonObj);            $.post(‘/UserArea/User/SaveData‘, { "param": JSON.stringify(arr) }, function (data) {                Success(data);            });

ASP.NET後台解析:

        #region 控制器接收資料        public JsonResult SaveData(string param)        {

       try { UserLogic.AddConstruct(param); return Json(new { Result = "OK", Message = "操作成功" }); } catch (Exception ex) { return Json(new { Result = "ERROR", Message = ex.Message }); } } #endregion #region 儲存資料到資料庫 public static bool AddConstruct(string json) { bool status = false; try { JArray jObject = (JArray)JsonConvert.DeserializeObject(json); for (int i = 0; i < jObject.Count; i++) { User cs = new User(); var tmpObj = (JObject)jObject[i]; cs.UserId= Convert.Int(tmpObj["UserId"]); cs.UserName= tmpObj["UserName"].ToString(); cs.Phone= tmpObj["Phone"].ToString();//向主表插入資料 UserContext.Instance.Insert(cs); } status = true; } catch { status = false; } return status; } #endregion

 

Json在asp.net開發中的應用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.