Ela*_*nda 8 .net serialization json
我有一个对象,我想序列化为我正在使用的Json格式:
public string ToJson()
{
JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
string sJSON = jsonSerializer.Serialize(this);
return sJSON;
}
Run Code Online (Sandbox Code Playgroud)
如何定义"this"中的某些字段不能序列化?
可能的方法是将这些字段声明为private
or internal
。
另一种解决方案是使用DataContractJsonSerializer
类。在这种情况下,您可以DataContract
向类添加属性。您可以使用属性控制要序列化的成员DataMember
- 所有标有该属性的成员都将被序列化,而其他成员则不会。
您应该按如下方式重写 ToJson 方法:
public string ToJson()
{
DataContractJsonSerializer jsonSerializer =
new DataContractJsonSerializer(typeof(<your class name>));
MemoryStream ms = new MemoryStream();
jsonSerializer.WriteObject(ms, this);
string json = Encoding.Default.GetString(ms.ToArray());
ms.Dispose();
return json;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3093 次 |
最近记录: |