【发布时间】:2013-03-15 12:21:48
【问题描述】:
我在 C# 中有一个 [Serializable] 类,它有很多字段,每个字段都有不同的类。我使用序列化来保存/加载此类的实例,但我经常会忘记在某处添加 [Serializable] 属性并且只在运行时学习。编译时可以检查吗?
比如这段代码,
[Serializable]
class House {
List<Room> Rooms;
}
class Room
{
}
不应通过验证,因为 Room 类不可序列化。
【问题讨论】:
-
@MatthewWatson:你不能在编译时使用反射。
-
@MatthewWatson 编译时可以检查吗?
-
哎呀误读了!我已将其删除。 :)
-
正如另一个问题中提到的,您可以使用自定义 FxCop 规则来做到这一点。
标签: c# .net serialization compile-time