假设我有一个简单的类:
[System.Serializable]
public class MyClass
{
public List<int> MyList;
public int MyListCount; // The number of items in MyList
}
上面只是一个(愚蠢的)例子,但由于MyListCount可以在任何时候从MyList派生,它应该被序列化(或者忽略)吗?为什么?
我会将它们从序列化中排除,并使用OnDeserialized属性来重新设置它们。
我喜欢只存储"非分析"属性的原则。(我还考虑设计这个类,使MyListCount
成为只读属性。)
我已经很久没有尝试使用JSON以外的任何东西进行序列化了,所以我可能记错了细节。。。