我写了下面的代码
HybridDictionary state = new HybridDictionary();
using (MemoryStream buffer = new MemoryStream())
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(buffer , state);
_backup.Push(buffer .ToArray());
}
但我在 formatter.serialize(st,state) 上遇到错误,如下所示:
” System.Runtime.Serialization.SerializationException 未被用户代码处理 Message="程序集“System,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”中的类型“System.ComponentModel.ReflectPropertyDescriptor”未标记为可序列化。"
这是什么意思?
最佳答案
添加
[field:NonSerializedAttribute()]
public event MyEventHandler SomeEvent;
您的事件。这将从序列化中忽略它们。
关于c# - 将 HybridDictionary 序列化为 byte[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1939449/