使用Json从字典创建对象

时间:2015-10-21 18:58:36

标签: c# asp.net json dictionary

如何将Dictionary序列化为json对象

 var dict = new Dictionary<string, string>()
        {
            {"Username", "{Username}"},
            {"FirstName", "{FirstName}"},
            {"LastName", "{LastName}"},
            {"AccountMeta[0].MetaKey", "Pincode"},
            {"AccountMeta[0].MetaValue", "150000"},

        };
public class Account {
    public string Username {get;set;}
    public string FirstName{get;set;}
    public string LastName {get;set;}
    public List<AccountMeta> AccountMeta {get;set;}
}

和物体:

public class AccountMeta{
     public string MetaKey {get;set;}
     public string MetaValue{get;set;}
 }

1 个答案:

答案 0 :(得分:2)

使用库 Newtonsoft.Json http://jsfiddle.net/k5pcdvkz/

优雅地管理任何类型对象的序列化,并且是免费的。

Json格式提供了一种序列化数组和排队对象的标准方法,它不支持对象路径。因此,将列表序列化为"List[index]" = "value"并将对象属性序列化为"Object.Property" = "Value"样式的方法无效

安装软件包:Newtonsoft.Json 使用示例:

Dictionary<string, string> dictionary = ...;
string Json = Newtonsoft.Json.JsonConvert.SerializeObject(dictionary);

MyClass Result = Newtonsoft.Json.JsonConvert.DeserializeObject<MyClass >();