为什么.NET允许SerializableAttribute应用于枚举
本文关键字:应用于 枚举 SerializableAttribute 允许 NET 为什么 | 更新日期: 2023-09-27 18:23:43
我有一个类,其中一个属性是enum。类似这样的东西:
//Do i need [Serializable]
public enum SexEnum
{
Male,
Female
}
[Serializable]
public class Person
{
string Name {get;set;}
SexEnum Sex {get;set;}
}
当我用BinaryFormatter
序列化Person
时,在枚举分离时是否需要[Serializable]
?如果没有它,它可以很好地工作,但为什么它允许在枚举分离中使用[Serializable]
属性?
.NET知道如何自动序列化所有简单的内置类型,所以这就是为什么不需要指定它
我认为,如果.NET不允许可序列化项的可序列化属性,那将更加令人困惑。事实上,你可以决定是否添加它,这取决于你的口味。