应用程序不会将文件保存到路径

时间:2016-02-23 14:24:59

标签: c# asp.net-mvc

我正在尝试将文件上传到我正在开发的应用程序中。

在我的本地计算机上,我一直使用以下方法将文件保存到共享资源上的文件夹中:

string path = Path.Combine("\\appname\myfolder$", Path.GetFileName(file.FileName));
file.SaveAs(path);

一切正常。

(在'appname'服务器上,文件夹'myfolder'在根目录中(例如)c:\ myfolder)

当我将项目部署到同一服务器上的IIS(例如http:\ appname)时,这不再有效。

因此,我尝试将代码更改为指向将运行的服务器上的c驱动器,例如。

string path = Path.Combine("c:\\myfolder", Path.GetFileName(file.FileName));
                    file.SaveAs(path);

这也不起作用。尝试了一些其他的东西,但现在完全失去了它。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

在IIS中运行此应用程序时,将授权用户分配给托管该网站的应用程序上下文。 默认情况下,工作程序在系统上下文中运行,操作系统(计算机帐户)需要访问共享 - 这实际上不是推荐的解决方案。

请参阅here如何配置应用程序池标识。