XmlSerializer 大法好

请原谅我之前的愚昧无知。我已经决定完全分离对象模型和对象的逻辑行为了。

引用使用 Id 保存,即类中不再出现对其他类的直接引用,而仅仅保存 Id。这样在序列化的时候就可以直接保存了。

XmlSerializer 是线程安全的。
XmlSerializer 是线程安全的。

然而我发现处理 Nullable 类型还是一个很麻烦的问题……
c# – Is there any way for my class to support serialisation as an XML attribute? – Stack Overflow

所以我要自己造轮子!