我有一个方法,应该将对象列表保存到xml文件中。
我遇到了这个异常:
未经处理的类型为'System.InvalidOperationException'的异常在...中发生。
附加信息:状态为EndRootElement的EndElement标记将导致无效的XML文档。如果您要编写XML片段,请确保将ConformanceLevel设置为ConformanceLevel.Fragment或ConformanceLevel.Auto。
我已尝试使用ConformanceLevel.Fragment,但是我得到了一个异常,告诉我如果想要保存XML文件,应该使用ConformanceLevel.Auto。
private void DumpToXMLFile(List<Url> urls, string fileName)
{
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.OmitXmlDeclaration = true;
settings.NewLineOnAttributes = true;
settings.ConformanceLevel = ConformanceLevel.Auto;
using (XmlWriter writer = XmlWriter.Create(fileName, settings))
{
writer.WriteStartDocument();
writer.WriteStartElement("Countries");
foreach (var url in urls)
{
writer.WriteStartElement("Country");
writer.WriteElementString("Name", url.Name);
writer.WriteElementString("Url", url.Uri);
writer.WriteEndElement();
}
writer.WriteEndElement();
writer.WriteEndElement();
}
}
我遇到了这个异常:
未经处理的类型为'System.InvalidOperationException'的异常在...中发生。
附加信息:状态为EndRootElement的EndElement标记将导致无效的XML文档。如果您要编写XML片段,请确保将ConformanceLevel设置为ConformanceLevel.Fragment或ConformanceLevel.Auto。
我已尝试使用ConformanceLevel.Fragment,但是我得到了一个异常,告诉我如果想要保存XML文件,应该使用ConformanceLevel.Auto。