C# 如何向现有类添加[OnDeserialized]功能? [OnDeserialized] 已序列化的公共静态void(此列表本身,StreamingContext上下文){ //特殊处理 }

C# 如何向现有类添加[OnDeserialized]功能? [OnDeserialized] 已序列化的公共静态void(此列表本身,StreamingContext上下文){ //特殊处理 },c#,serialization,C#,Serialization,这个扩展方法显然不起作用,但我想为List提供一个[OnDeserialized]实现,而不必被迫创建一个只有构造函数的子类 这可以用另一种方法吗?是否有可以挂接的事件系统?属性是静态元数据。因此,它们在编译时应用于类的类型 根据定义,扩展方法不是类型的一部分,您不能动态应用属性 由于List是一种封闭类型,因此无法实现这一点。是的,问题指出扩展方法不是答案。 [OnDeserialized] public static void OnDeserialized(this List<Bbb&

这个扩展方法显然不起作用,但我想为List提供一个[OnDeserialized]实现,而不必被迫创建一个只有构造函数的子类


这可以用另一种方法吗?是否有可以挂接的事件系统?

属性是静态元数据。因此,它们在编译时应用于类的
类型

根据定义,
扩展方法
不是
类型
的一部分,您不能动态应用属性


由于
List
是一种封闭类型,因此无法实现这一点。

是的,问题指出扩展方法不是答案。
[OnDeserialized]
public static void OnDeserialized(this List<Bbb> self, StreamingContext context) {
    //special handling
}