【发布时间】:2018-09-02 20:31:04
【问题描述】:
我最近写了一个使用 C5 库“IntervalHeap”复制一个类的代码,但遇到了这样的错误消息。
System.Runtime.Serialization.SerializationException: '类型 'C5.IntervalHeap`1+Interval[[TransSys1.Node, TransSys1, 版本=1.0.0.0,文化=中性,PublicKeyToken=null]]' 在程序集中 'C5,版本=2.5.0.0,文化=中性, PublicKeyToken=282361b99ded7e8e' 未标记为可序列化。'
我检查了here 中的源代码,但IntervalHeap 类已经标记为[Serializable]。我再次构建了源代码,但它仍然无法正常工作。我用 x64 平台调试了我的项目。
您能告诉我可能的原因或解决方法吗?
【问题讨论】:
-
@orhtej2,它似乎与那个问题没有重复:与
partial class和Form相关的问题,这个程序集和类型都不是github.com/sestoft/C5/blob/master/C5/heaps/IntervalHeap.cs 答案可能值得考虑,但不够明显,无法将其视为重复。 -
Thomas,给了我们一个你写的类的代码示例,它“复制”(我想你的意思是继承)这个
IntervalHeap<T>类。 -
更重要的是,thomas,你传递的通用
T是什么?如果是类,是否标记为serializable?你能不能快点试试,
标签: c# serialization priority-queue c5