[Serializable]是否适用于继承的类?

时间:2011-01-05 23:37:06

标签: c# .net serialization appdomain

我没有使用远程工作,所以请原谅这个相当简陋的问题,如果我从标记为[Serializable]的抽象类派生一个类(用于在appdomain中传递数据),另一方是否得到了实际的覆盖实施?即多态性是否适用于远程处理/可序列化?

我需要在另一边创建一个克隆而不是在原始文件上操作,所以MarshalByRef不是一个选项......

2 个答案:

答案 0 :(得分:3)

查看[Serializable]未被继承的最简单方法是按F12并在AttributeUsage中看到“Inherited = false”。更难的选择是http://msdn.microsoft.com/en-us/library/bcfsa90a.aspx的RTFM。

基本上,您需要将所有类标记为可序列化,并且它们将被正确反序列化。

答案 1 :(得分:2)

在反序列化类型时,是,在远程域中重构相同的类型。

您可以使用IObjectReference模式控制反序列化类型:

http://msdn.microsoft.com/en-us/library/system.runtime.serialization.iobjectreference.aspx