值可以从其他字段派生的字段是否应该序列化

本文关键字:字段 是否 序列化 派生 其他 | 更新日期: 2023-09-27 18:25:54

假设我有一个简单的类:

    [System.Serializable]
    public class MyClass
        {
            public List<int> MyList;
            public int MyListCount; // The number of items in MyList
        }

上面只是一个(愚蠢的)例子,但由于MyListCount可以在任何时候从MyList派生,它应该被序列化(或者忽略)吗?为什么?

值可以从其他字段派生的字段是否应该序列化

我会将它们从序列化中排除,并使用OnDeserialized属性来重新设置它们。

我喜欢只存储"非分析"属性的原则。(我还考虑设计这个类,使MyListCount成为只读属性。)

我已经很久没有尝试使用JSON以外的任何东西进行序列化了,所以我可能记错了细节。。。