如何获取反序列化对象的json源? json.net

时间:2013-03-27 15:45:58

标签: c# json.net deserialization

即时通讯使用json.net

将json反序列化为对象后,我想获取此对象的json源代码

e.g。

objParent:{
  objChild1: {name:"testObj"},
  objChild2: {age: 25}
}

在c#代码中

public ObjChild1
{
  public string name {get;set;}

  [JsonIgnore]
  public string JsonSource { get; set; }    //objChild1: {name:"testObj"}
}

public ObjChild2
{
  public int age {get;set;}

  [JsonIgnore]
  public string JsonSource { get; set; }   //objChild2: {age: 25}   
}

1 个答案:

答案 0 :(得分:0)

我没有安装json.net但是使用标准类,您只需将单个对象序列化为JSON字符串,如下所示:

...
    public static class JSONHelper
    {
        public static string ToJSONString(this object obj)
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }
    }
...

    public ObjChild1
    {
        public string name {get;set;}

        [ScriptIgnore]
        public string JsonSource { get { return this.ToJSONString(); } }
    }    

    public class ObjChild2
    {
        public int age {get;set;}

        [ScriptIgnore]
        public string JsonSource { get { return this.ToJSONString(); } }
    }