我有一个标记为可序列化的简单类,它恰好有一个事件。我试图将事件成员标记为 NonSerialized,但是编译器抱怨。然而,当我去序列化类实例时,BinaryFormatter 会引发事件不可序列化的异常。这是否意味着您不能序列化具有事件的类?如果是这样,那么编译器应该提前说出来。
Stream file = File.Open("f", FileMode.Open);
BinaryFormatter bf = new BinaryFormatter();
object obj = null;
try
{
obj = bf.Deserialize(file);
}
catch (System.Runtime.Serialization.SerializationException e)
{
MessageBox.Show("De-Serialization failed : {0}", e.Message);
}
file.Close();
System.Collections.ArrayList nodeList = obj as System.Collections.ArrayList;
foreach (TreeNode node in nodeList)
{
treeView.Nodes.Add(node);
}
无法在以下课程上工作:
[Serializable()]
class Simple
{
private int myInt;
private string myString;
public event SomeOtherEventDefinedElsewhere TheEvent;
}