进程无法访问该文件,因为文件IO中的另一进程正在使用WCF服务使用该文件

进程无法访问该文件,因为文件IO中的另一进程正在使用WCF服务使用该文件,wcf,file-io,Wcf,File Io,我正在使用以下代码在中写入文件,但在尝试打开该文件以在其中执行某些操作时出现了问题。。这给了我错误 该进程无法访问该文件,因为另一进程正在使用该文件。 我使用WCF获取参数值,并使用.NET4.0 string strTemp = Penn.Common.Shared.GlobalConstants.tempFolder; string str = System.Web.Hosting.HostingEnvironment.ApplicationP

我正在使用以下代码在中写入文件,但在尝试打开该文件以在其中执行某些操作时出现了问题。。这给了我错误 该进程无法访问该文件,因为另一进程正在使用该文件。 我使用WCF获取参数值,并使用.NET4.0

            string strTemp = Penn.Common.Shared.GlobalConstants.tempFolder;
            string str = System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath;
            string format= "MM dd yyyy HH mm ss";
            string filename = "XMLFile" + DateTime.Now.ToString(format) + ".xml";
            StringBuilder strbuilder= new StringBuilder();
            strbuilder.Append(str);
            strbuilder.Append(@"\");
            strbuilder.Append(strTemp);
            strbuilder.Append(@"\");
            strbuilder.Append(filename);
            File.Create(strbuilder.ToString());
            File.Open(strbuilder.ToString(), FileMode.Open, FileAccess.Write, FileShare.Write);
            System.IO.StreamWriter objwriter = new StreamWriter(strbuilder.ToString()); 
            objwriter.Write(xml);
            objwriter.Close();

文件之后。创建文件已打开

试试像这样的东西

using (StreamWriter sw = File.CreateText(strbuilder.ToString())) 
{
   sw.WriteLine(xml);
}

这也会自动关闭streamwriter。

我已删除File.Open(strbuilder.ToString(),FileMode.Open,FileAccess.Write,FileShare.Write);也。但不起作用..用我的代码替换“File.Create(strbuilder.ToString());”中的所有内容,然后重新启动应用程序。应该有用!