使用Linq to XML打开,更改然后将更改保存到XML文件时出现问题。
这是我的代码:
XDocument doc = XDocument.Load("xml/Campaigns.xml");
XElement newCampaign = new XElement("campaign",
new XAttribute("id", "2"),
new XElement("name", "new campaign")
);
doc.Add(newCampaign);
doc.Save("xml/Campaigns.xml");
只有当我尝试保存更改时,我才会收到打开,创建和添加XElement的任何编译错误。
我看到的编译错误是:'System.Xml.Linq.XElement.Save(System.Xml.XmlWriter)'的最佳重载方法匹配有一些无效的参数
和
参数1:无法从'string'转换为'System.Xml.XmlWriter'
我不确定为什么要制作或期望我使用XmlWriter,因为根据这个我可以在保存方法中保存一个字符串:
http://msdn.microsoft.com/en-us/library/bb345830.aspx
如果有人可以提供帮助,我将不胜感激。
答案 0 :(得分:2)
我的猜测是你正在使用Silverlight(例如在Windows Phone 7上) - Save
method的重载次数较少。目前尚不清楚您要将文档保存到哪里,但如果 使用Silverlight,那么您将需要使用链接页面中列出的重载之一。