我正在使用Json.net(Newtonsoft.Json)来序列化或反序列化某些类。
有我的班级
[DataContract]
Public class Person
{
[DataMember]
public string ID { get; set; }
}
public class Student : Person
{
public string StudentName { get; set;}
}
现在我想序列化学生,但看起来像 Json.net只序列化或反序列化DataContract
类和DataMember
属性。它总是忽略我的StudentName
属性,但我需要它包含在。
有没有办法解决这个问题?谢谢。
答案 0 :(得分:0)
根据official site,您只需将[DataMember]
属性添加到StudentName
即可在json字符串中包含此属性。
答案 1 :(得分:0)
如果您需要添加StudentName
属性,只需在此属性中添加[DataMember]
属性。
但是,另一种更简单的方法是完全删除[DataContract]
和[DataMember]
,因为Newtonsfot.Json并不真正需要它们来确定要包含哪些属性。
public class Person
{
public string ID { get; set; }
}
public class Student : Person
{
public string StudentName { get; set;}
}
// ...
Student student = new Student() { ID = "1", StudentName = "John" };
string resultJson = Newtonsoft.Json.JsonConvert.SerializeObject(student);