如何使用XDocument.Load()方法加载Xml文件同时锁定它?

时间:2015-11-02 07:16:56

标签: c# xml

我正在使用以下两个代码来加载XML。当我尝试加载它时,其他一些进程正在更新相同的XML。在这两种情况下,我都给出了以下错误: -

  

该进程无法访问该文件   ' d:\项目\ WriteOnXml \ XML \的test.xml'因为它正被使用   另一个过程。

1)

using (FileStream xml = File.Open(filePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
    XDocument xdoc = XDocument.Load(xml);       
}

2)

using (StreamReader sr = new StreamReader(dest))
{
    xdoc = XDocument.Load(sr);
}

我希望在通过其他进程更新时加载它。 任何更好的方法。

1 个答案:

答案 0 :(得分:0)

看看这个问题: c# xml.Load() locking file on disk causing errors

似乎如果你可以使用xml文档,它将起作用......