【发布时间】:2012-04-19 03:42:10
【问题描述】:
我有很多以 XML 格式保存的序列化对象,但我想为这些对象添加 2 个变量。
这是我的对象:
public class MyObject{
public Int32 MyVariables = 0;
}
这个对象已经被序列化了很多次,我想保留将这些“旧”文件读入我的应用程序的能力。
但是我需要多加几个变量才能让对象更好,比如:
public class MyObject{
public Int32 MyVariables = 0;
public Dictionary<string,MyEnum> MyDict = new Dictionary<string,MyEnum>();
}
谁能建议添加这些新变量的最佳方法?我实际上更改了 MyObject 并添加了字典,我相信它不再被正确读取。
提前致谢!
编辑:我也无法在任何地方捕获异常以查看在读取对象时失败的位置,我这样做是为了这样做:
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
object obj = formatter.Deserialize(File.Open(Path, FileMode.Open));
编辑 2:我相信这实际上可能是由于我使用枚举作为字典的一部分,我在枚举上方添加了 [Serializable],但它仍然不起作用 - 想法?
【问题讨论】:
标签: c# serialization