0

Unauthorized Access当我这样做时有一个例外:

if (fileurl != null && fileurl.ContentLength > 0)
                {
                 var fileName = Path.GetFileName(fileurl.FileName);
                // var path = AppDomain.CurrentDomain.BaseDirectory + fileName;
                 var path = Path.Combine(@"C:\Projets", fileName);
                 fileurl.SaveAs(path);
                 string path2 = Path.GetFileNameWithoutExtension(path);
                 Directory.CreateDirectory(path2);

我保存了一个压缩文件fileurl.SaveAs(path);,我想在同一路径中创建一个新目录。我验证了路径path2,没问题。但指令Directory.CreateDirectory(path2);失败并出现异常Unauthorized Access

为什么会这样?我该如何解决?

4

4 回答 4

1

听起来像是权限问题。确保您的用户具有读/写文件权限。

于 2013-05-30T10:17:46.553 回答
0

您需要检查运行 Web 应用程序的应用程序池的身份。默认标识对 C:\Projets 等没有权限。您需要明确授予具有写入 C:\Projets 权限的身份的用户或用户组。

于 2013-05-30T11:31:48.453 回答
0

您的意思是将路径设置为 C:\Projets 或 C:\Projects 吗?您可能会在不存在的路径上获得未经授权的访问

于 2013-05-30T10:20:39.203 回答
0

您将其标记为 ASP.NET,因此您不能将其用作控制台或 Windows 窗体应用程序。

您的 Web 应用程序在服务器端运行并使用不同的用户帐户。

您需要授予应用程序池运行用户权限,而且由于这是 Web 应用程序,您需要写入您网站下的目录或应用程序池用户可访问的另一个虚拟目录。

于 2013-05-30T10:23:27.970 回答