背景介紹:asp.net中使用json對象傳參;mvc中可以直接使用jsonresult這個對象
一:怎么使用jsonresult
public JsonResult text() { var strlist = new List<string>(); // 數據添加 return Json(new { strlist}); }
//一個結果
//{"strlist":["/Upload/CRM/2017622/14981209357290.jpg"]}
這里給出了怎么使用jsonresult和最后得到的結果數據示例。
二:前台怎么調用
//response是在ajax中獲取到的數據 var strlist=$.parseJSON(response).strlist[0]; alert(strlist);
這里要注意的一點是數據如果是已一個strlist傳入,在前台接收的時候就是多個key為strlist的值。
當然我這里傳遞進來的是一個list,也可以去傳遞更多的數據類型,這樣的話就是在前台接受的時候需要注意到數據結構,然后通過多層解析拿到數據
三:在后台調用jsonresult
有個新的需求,在另一個后台方法中調用數據然后做一些處理,這樣就要在后台解析數據,在這里我才用了老方法,把數據先反序列化一下
public JsonResult UpLoadImageForCom(string Folder = "COM") { //數據源 var urlname = UpLoadImageForGuest("COM"); //{"urlname":["/Upload/CRM/2017622/14981209357290.jpg"]} JObject jo1 = (JObject)JsonConvert.DeserializeObject(urlname.ToString()); string comurl = jo1["urlname"].ToString(); ConfigService.UpdateCommercialTenantUrl(comurl); return urlname; }
這是一個錯誤的實例,如果有好的方法,請發給我。urlname.data.urlname.value才會是我要的值,但是不是這么取得到的。