检查文件是否存在于同一服务器asp.net上

时间:2014-05-11 22:43:51

标签: asp.net file-io

我正在使用Asp.net网站。我想检查文件是否在同一服务器部署的应用程序上。我如何通过物理路径或虚拟路径检查?

例如:我的网站直接部署在服务器A上,位于D驱动器下的Web1中。 我还有一个网站部署在同一台服务器上,但不同的目录WEB2。WEB2目录中有文件夹说附件,其中包含所有媒体文件,如pdf,doc等。

那么如何从Web1检查WEB2 / Attachment文件夹中的文件是什么?

2 个答案:

答案 0 :(得分:0)

如果他们在同一台服务器上,您可以使用File.Exists(文件..)

如果他们在不同的服务器上但仍在同一网络中,请在使用File.Exists时映射驱动器或使用UNC格式

如果他们在不同的服务器上无法看到彼此的驱动器,请在每个站点内创建一个Web服务;添加一个以文件名作为参数的方法,webservice本身可以执行File.Exists

答案 1 :(得分:0)

确保您的应用程序池可以访问附件文件夹。我认为默认情况下,应用程序池无法访问web1目录之外的文件夹。然后,您可以执行以下代码以获取附件文件夹中的文件列表。

string[] fullPathToFiles = Directory.GetFiles("D:\web2\attachment\")

或者你可以执行

File.Exists("D:\web2\attachment\<file.pdf>")
正如sh1rts所暗示的那样。