Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 文件。UNC共享文件夹存在问题_.net - Fatal编程技术网

.net 文件。UNC共享文件夹存在问题

.net 文件。UNC共享文件夹存在问题,.net,.net,我们最近在windows 2008 r2服务器上将一个asp.net 2.0项目升级为.net 4.0,我们发现的问题之一是对UNC共享文件夹的File.Exists()调用。Windows2003服务器上的.NET2运行良好。代码所做的是使用windows模拟来访问由web服务创建的文件的共享文件夹。似乎File.Exists()返回false,即使该文件存在于web服务刚刚创建的共享文件夹中。现在,我认为当本地代码尝试访问文件时,web服务中的文件对象可能不会被关闭。因此,如何用File.E

我们最近在windows 2008 r2服务器上将一个asp.net 2.0项目升级为.net 4.0,我们发现的问题之一是对UNC共享文件夹的File.Exists()调用。Windows2003服务器上的.NET2运行良好。代码所做的是使用windows模拟来访问由web服务创建的文件的共享文件夹。似乎File.Exists()返回false,即使该文件存在于web服务刚刚创建的共享文件夹中。现在,我认为当本地代码尝试访问文件时,web服务中的文件对象可能不会被关闭。因此,如何用File.Exists方法的.NET4实现来解决这个问题,我尝试将线程设置为睡眠状态几秒钟,但没有任何帮助,而且这不是一个好的解决方案

有什么想法吗

更新:


好的,我添加了一个while循环来等待web服务关闭文件。现在,File.Exits在while循环期间返回true。有趣的是,它在asp.NET2.0中运行良好。不确定.net 4是否有不同的实现,或者是服务器差异导致了这种不同的行为。

给我们看一些代码。但这听起来像是权限问题。您可以考虑尝试在该目录中列出文件或打开该共享文件。我怀疑你最终会遇到一个
未经授权的访问异常
。不,我尝试检查文件夹中已经存在的其他文件,它工作正常。因此,这使我相信文件对象没有关闭(这不太可能,因为完全相同的代码在windows 2003 server上的asp.net 2.0中工作正常)或刷新文件状态问题的某些网络延迟。OK,因此我添加了一个while循环,以等待web服务关闭文件。现在,File.Exits在while循环期间返回true。有趣的是,它在asp.NET2.0中运行良好。不确定.net 4是否有不同的实现或服务器差异导致了这种不同的行为。所以问题是Web服务没有及时关闭文件?文件的编写方式是否存在缺陷?调用
Close
Dispose
失败?我设置了一个while循环等待检查文件,大约4.5秒后返回true。问题是它在asp.NET2.0中运行良好。现在我开始怀疑asp.NET4是否有某种异步woodoo。但是我知道页面模式没有设置为异步。