国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#后臺接受前臺JSON字符串裝換成字典集合處理

2020-01-24 01:12:06
字體:
來源:轉載
供稿:網友

一直以來,我們都是在服務端查詢出結果生成JSON字符串,供前端調用,那么我們能否把從前端接受的JSON字符串轉換成字典集合,讓后臺處理呢?

比如從前端接收:{'size':'10', 'weight':'10kg'}

在服務端轉換成:[{size:"10"},{weight:"10kg"}]這樣的字典集合

通過Newtonsoft的DeserializeObject<Dictionary<string, string>>方法可以把JSON字符串反序列化成字典集合。

假設有這樣的一個Model(實體)

using Newtonsoft.Json;using Newtonsoft.Json.Linq;public class Product{  public string ProductDetails { get; set; }  public Dictionary<string, string> ProductDetailList  {    get    {      if (string.IsNullOrWhiteSpace(ProductDetails))      {        return new Dictionary<string, string>();      }      try      {        var obj = JToken.Parse(ProductDetails);      }      catch (Exception)      {        throw new FormatException("ProductDetails不符合json格式.");      }      return JsonConvert.DeserializeObject<Dictionary<string, string>>(ProductDetails);    }  }}

以上,通過JToken.Parse判斷JSON字符串是否可以被轉換,如果不行就拋異常。通過JsonConvert.DeserializeObject<Dictionary<string, string>>(ProductDetails)反序列化成字典集合。

public void Main(string[] args){  var product = new Product();  product.ProductDetails = "{'size':'10', 'weight':'10kg'}";  foreach(var item in product.ProductDetailList)  {    Console.WriteLine(item.Key + " " + item.Value);  }  Console.Read();}

創建Product實體,給product.ProductDetails屬性賦值,程序會自動完成轉換,這樣我們就可以遍歷product.ProductDetailList,將相應的值插入數據庫,或做其他處理。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤峰市| 阳西县| 神农架林区| 安塞县| 大石桥市| 鹤岗市| 哈尔滨市| 华宁县| 常山县| 南充市| 治县。| 随州市| 灵石县| 光泽县| 古丈县| 天等县| 平南县| 嵊州市| 海林市| 和平区| 阿克苏市| 七台河市| 宁蒗| 瑞昌市| 陇西县| 望江县| 旬邑县| 石泉县| 兰溪市| 敦化市| 醴陵市| 文山县| 理塘县| 宜川县| 谷城县| 鞍山市| 灵山县| 贡觉县| 尚义县| 平阴县| 吉水县|