标签: c#
我正在尝试序列化一个大型对象,这已经工作了几个月,如果不是几年,并且最近的修订已经导致在旧文件中发生此错误。
重新序列化后,我会收到一条消息,指出TypeLoadExceptionHolder未标记为“Serializable”。我在序列化调用之前立即设置了一个断点,似乎找不到该类型的任何引用。无论如何都要'扫描'我想要序列化的对象,看看对TypeLoadExceptionHolder的引用在哪里?
TypeLoadExceptionHolder
Serializable
答案 0 :(得分:3)
有许多方案可以触发此类异常。一些更常见的是here和here。
(从上面的链接总结)简而言之,当一个类型无法序列化时,二进制序列化不会抛出异常。相反,它用TypeLoadExceptionHolder类型替换unserializable类型。除了没有很好的文档记录之外,使用它的原因更是如此。
您可能会被困在手动确定您尝试序列化的对象中发生了哪些更改。具体来说,寻找: