【发布时间】:2013-06-12 14:19:53
【问题描述】:
我有一个 MVC.NET 站点,它获取用户上传的文件并保存它。 我的部分代码创建了一个新目录。
try
{
Directory.CreateDirectory(path);
}
catch (Exception e)
{
log.ErrorException("CreateDirectory failed", e);
return false;
}
这在本地运行良好。但是,当部署到 IIS6 WIN2003 VPS 时,它什么也不做。没有记录异常,也没有创建目录。在 Windows 权限中,我已授予“网络服务”和“所有人”修改对父文件夹的访问权限。为什么没有创建目录。
我还有保存文件hpf.SaveAs(savedFileName); 的代码,该文件在部署时也不起作用。我尝试安装 ProcessMonitor 但它不会运行
【问题讨论】:
-
您确定您检查的是正确的目录吗?试试
Path.GetFullPath(path) -
path是如何形成的?也许您在本地开发机器中使用了服务器上不存在(或您没有权限)的绝对路径 -
-您的应用程序是否具有创建文件夹的正确权限(在本地,您可能在管理员上下文中)。您确定没有异常还是
log函数本身失败(并且不会抛出异常)? -
尝试在
try子句中记录变量path,看看它是否符合您的期望。 -
我尝试了所有这些方法,但仍然没有运气。路径是我所期望的。我的应用程序确实具有完全权限。日志运行正常。该网站设置有“写入”权限
标签: c# asp.net-mvc windows-server-2003 ii6