gpt4 book ai didi

.net - 为什么我的 .Net 对象不能序列化?

转载 作者:行者123 更新时间:2023-12-04 14:20:07 25 4
gpt4 key购买 nike

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

我已经在我的类(class)中实现了 ISerializable 并且有一个“公共(public)覆盖子 GetObjectData ...”

但是,当我尝试序列化“MyDataTable”的对象时,我收到一条错误消息,指出“MyDataTable”未标记为可序列化。

如果我改用 DataTable - 我的代码可以正确序列化。
如果我向“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.

关于.net - 为什么我的 .Net 对象不能序列化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2961931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com