我一直在读.NET中的序列化,并开始想知道将OnSerializing/OnSerialized/OnDeserializing/OnDeserialized功能作为属性实现与接口相比的主要原因是什么.我可以想到一些优点和缺点,但我可能错过了一些至关重要的东西,所以我想知道什么是重要的.
支持界面:
在编译时检查方法签名(使用具有错误签名的方法的属性导致运行时异常)
在类级别上没有为单个事件声明两个方法(装饰具有相同属性的两个方法会导致运行时异常)
赞成属性:
.net c# serialization
.net ×1
c# ×1
serialization ×1