正在使用的文件等

时间:2013-05-22 18:28:45

标签: c# xslt

我们有一个自定义应用,每隔10秒就会将统计信息写入XML文件。 Web服务读取XML并每3秒对其进行一次转换。大约每5次刷新(任意数量)我们得到一个空白屏幕b / c Web服务在我们写入文件时试图从文件中读取。

我无法对网络服务或其在文件中的读取方式做任何事情。我需要做的是能够写入文件而不会导致页面空白。

有什么想法吗?

这是C#btw .NET 4

2 个答案:

答案 0 :(得分:3)

更改您的代码以写入不同的文件名,然后调用File.Replace()以原子方式替换原始文件。

这样,您希望将文件锁定任何明显的时间。

答案 1 :(得分:0)

您可以将要写入的文件名更改为其他文件名(在文件名之后添加时间戳可能是一个好习惯),因此它不会被锁定。然后,您可以使用刚刚创建的新文件替换旧文件。