尝试在C#中序列化对象时出现此错误
未处理的类型' System.InvalidOperationException' 发生在System.Xml.dll
中其他信息:反映类型的错误 ' ComboGen.ElementLocation'
我尝试做的是序列化表单中的所有控件元素,以便我可以重新阅读它们并重新填充表单。
我想要序列化并保存控件元素的类定义为
[System.Serializable]
[System.Xml.Serialization.XmlInclude(typeof(ElementLocation))]
public class ElementLocation
{
public List<ElementLocation> subElements;
public TextBox ActionName;
public TextBox CoolDown;
public TextBox ClearInputBuffer;
public Button AddCombo;
}
要序列化我使用
System.Xml.XmlWriter xmlWriter = System.Xml.XmlWriter.Create(myStream);
System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(ElementLocation));
foreach (ElementLocation elemLoc in elementLocations)
{
serializer.Serialize(xmlWriter, elemLoc);
}
myStream.Close();
但是在尝试调用Serialize时会抛出异常。有人能告诉我我在这里做错了吗?