将文件上传到c#中的网络映射驱动器

时间:2013-01-15 10:55:38

标签: c# asp.net-mvc-3 entity-framework

我正在使用c#asp.net mvc 3和实体框架将文件上传到映射为Z盘的网络驱动器。我有以下c#代码来确定文件路径:

var path = Path.Combine(Z:/upload/catone/", fileName);
aries.SaveAs(path);

我正在使用Windows Server 2008和IIS 7.我还检查了网络驱动器上传文件夹的安全性,并为每个用户提供了完全控制权。如果我将文件路径更改为本地驱动器,它可以正常工作。但它在上传到网络驱动器时显示以下错误(Z:/)。

Could not find a part of the path 
'Z:\upload\catone\_2013011504265221N_todaily.wav'.

2 个答案:

答案 0 :(得分:4)

您的代码在IIS下运行,因此使用IIS用户帐户的访问权限运行,该用户帐户可能无权访问该网络驱动器。

您可以尝试在您的身份下运行应用程序池,以解决此问题,或者将IIS_IUSRS组的完全访问权限授予该文件夹。

答案 1 :(得分:1)

首先将文件保存在本地机器中, 而不是使用file.copy(Source,Destination,true)方法将文件保存在网络驱动器中。

尝试它对你有帮助