为什么我的.Net对象不可序列化?

我有一个继承自System.Data.DataTable的’MyDataTable’类

我已经在我的类中实现了ISerializable并且有一个’Public Overrides Sub GetObjectData …’

但是当我尝试序列化’MyDataTable’的对象时,我得到一个错误,说’MyDataTable’没有标记为可序列化.

如果我使用DataTable代替 – 我的代码正确序列化.
如果我将一个serializable属性添加到’MyDataTable’类 – 它正确序列化,但我被告知如果我实现ISerializable是不必要的.

有人能指出我正确的方向吗?

谁告诉你没有必要添加 SerializableAttribute是不正确的:

Apply the SerializableAttribute attribute even if the class also implements the ISerializable interface to control the serialization process.

ISerializable开始(em添加):

Any class that might be serialized must be marked with the SerializableAttribute. If a class needs to control its serialization process, it can implement the ISerializable interface.

相关文章
相关标签/搜索