你的位置:首页 > ASP.net教程

[ASP.net教程]C#中服务端接受前端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();}

 

遍历字典集合,可以把数据保存到数据库。

 


泰国蜜月旅游行程参考泰国特价旅游多少钱到泰国游费用报价大全泰国自助游攻略2015怎样去泰国旅游泉城欧乐堡有什么表演节目?齐河泉城欧乐堡演出节目介绍? 徐州到天目湖南山竹海有多远?徐州到天目湖南山竹海开车怎么走? 徐州到天目湖南山竹海怎么坐车?徐州到天目湖南山竹海乘车路线? 天目湖南山竹海攻略?南山竹海快怎么玩? 三亚机场怎么去大亚湾? 丽江有什么好玩的娱乐活动吗? 春节去昆明、丽江怎么样? 三亚有哪些机场?机场有几个国际航班? 清远天子山景区简介?清远天子山瀑布自然风景区怎么样? 天子山景区简介?清远天子山景区旅游景点有哪些? 天子山瀑布自然景区怎么样?清远天子山有什么玩的? 天子山瀑布景区电话?清远天子山瀑布景区门票价格? 琼中黎族美食之琼中小黄牛 红军长征翻越夹金山纪念馆旅游攻略 夹金山旅游攻略 卧龙大熊猫旅游交通介绍 0805MN505-130 Datasheet 0805MN505-130 Datasheet 0805MN505-130-T8 Datasheet 0805MN505-130-T8 Datasheet 081G0603BGP Datasheet 081G0603BGP Datasheet 广州到株洲空灵岸旅游 广州到株洲空灵岸旅游 广州到株洲空灵岸旅游 广州到株洲灵镜湖旅游 广州到株洲灵镜湖旅游 广州到株洲灵镜湖旅游 广州到株洲罗哲烈士墓旅游 广州到株洲罗哲烈士墓旅游 广州到株洲罗哲烈士墓旅游