【发布时间】:2014-06-23 00:41:06
【问题描述】:
我一直在对此进行一些研究,但仍然无法解决。我有这个功能:
private void AddNewService()
{
string strPath = "ServicesToExecute.xml";
string strServicename = tbNewService.Text;
//try
//{
XDocument xdDocument;
using (XmlReader xmlReader = XmlReader.Create(strPath))
{
xdDocument = XDocument.Load(xmlReader);
XElement root = new XElement("Service");
root.Add(new XElement("Name", strServicename));
xdDocument.Element("ServicesToExecute").Add(root);
xmlReader.Close();
xdDocument.Save(strPath);
}
我在尝试保存文件时遇到错误...知道吗?我想我错过了一些非常非常愚蠢但现在看不到的东西。
【问题讨论】:
-
收到错误时抛出什么异常?
-
为什么不使用带路径的
XDocument.Load重载,而不是自己创建XmlReader并关闭它? -
异常是“System.xml.dll 中发生 System.IO.IOException 类型的未处理异常”进程无法访问文件 blablabla.xml,因为它正被另一个进程使用...
标签: c# xml linq-to-xml xmlreader