2009-10-24 73 views
1

我一直在试图序列化一个很大的对象。该对象使用字典来跟踪各种数据。我正在使用二进制格式化程序,并希望能够轻松地序列化整个对象,而不会干扰/不得不在下面的层中更改代码。嵌入对象深处的字典序列化

有没有办法解决这个问题?我不想手动序列化字典(正如我见过其他人做的那样来解决这个问题)。

谁解决了这个让金盘的一个;)

+0

二进制格式*可*序列化词典,它的XML序列化窒息他们。或者你想从二进制序列化中排除某些字段? – 2009-10-24 10:40:58

+0

好吧..这很奇怪。我试图序列化这本词典时得到的结果是“无法找到MyObject构造函数”..我可能错过了说这是一个扩展词典(来自Dictionary 的类)。但内部异常点DictionaryInternal ...而我有一个构造函数,所以......我完全迷失在这一个。下面 硒代码: [序列化] 公共类的MyObject:字典,ISerializable的 { 公共为MyObject():碱() { } 公共列表 GetIndexes() { 返回this.Keys .ToList (); } } – Robin 2009-10-24 10:46:05

+0

如果你说“:ISerializable”,你应该实现ISerializable,这包括一个特殊的构造函数,它需要(SerializationInfo,StreamingContext)。你真的需要首先实现ISerializable吗? – 2009-10-24 10:50:46

回答

0

正如安东表示,该二进制序列能够序列化的所有对象在你的对象图,只要在图中的每个对象是可序列化的。如果您无法诊断您的对象图的对象序列化的,您可以使用sertool发现了这一点:

enter image description here