我在我的应用程序使用自定义序列即,每个我存储的类具有[Serializable]属性和机具ISerializable序列化的数据。被序列化对象图是与许多的对象/类之间的交叉引用的相当复杂的。序列化的工作的,但它是相当缓慢的。 :(

通过将在每个相关类的GetObjectData方法中设置断点,我发现我越来越多,越来越多的命中比我有对象。

我很困惑 - 我的序列化框架的理解是,它会存储每个对象只有一次,即使对象图包含到它的多个引用。我以为,这意味着每个对象的GetObjectData方法将需要保存时只调用一次。我错了?

如果是这样,有什么我可以在这个方法做,以减少调用我的班GetObjectData方法有多少?

感谢。

有帮助吗?

解决方案

MSDN文档做不能保证每个对象实例只是1个呼叫。

你有不同的格式化试过吗?有评论的此处所选择的工作,正在采取改善这种效果。专门为靛蓝(又名WCF)。

  

它不保证该方法   将每个对象,调用一次   实例序列化过程中。   因此,该方法应该是   以这样的方式来实现其   行为将是相同的,不管   的次数的它被称为

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top