在我的网络应用程序中,我有一个按钮,它根据日期创建一个文件夹,如下所示:
if (!Directory.Exists(SaveLocation + DateTime.Now.Year + @"\" + DateTime.Now.Month + " - " + DateTime.Now.ToString("MMM") + @"\" + DateTime.Now.Day + @"\" ))
Directory.CreateDirectory(SaveLocation + DateTime.Now.Year + @"\" + DateTime.Now.Month + " - " + DateTime.Now.ToString("MMM") + @"\" + DateTime.Now.Day + @"\");
当我在localhost中运行此代码时,这很好用。每当这在服务器上运行时,我都会收到错误:
Access to the path '\\server\share\savelocation\2014\06 - June\3\' is denied
我尝试过的事情:
<identity impersonate="true" />
添加到Web.config 为什么应用程序无法访问此目录?
答案 0 :(得分:0)
好的,所以我禁用了对服务器的匿名身份验证,现在它可以工作了。我假设当时尝试以权限不足的用户身份访问共享。我没有理解这一点,因为它在将信息传递给SQL服务器时使用了正确的凭据,因此我认为凭据对于文件夹权限是正确的。但无论如何它现在都有效。
答案 1 :(得分:0)
在处理文件和文件夹时,您需要物理文件路径,而不是根相对路径。试试这个: var content = Server.MapPath(“〜/ Content /”);
https://forums.asp.net/t/1807775.aspx?Create+e+New+Folder+Access+Denied+
答案 2 :(得分:-1)
删除尾部斜线;在MSDN上,这些例子没有它,而IIRC则会产生问题。