Server.MapPath()中的System.UnauthorizedAccessException

时间:2013-08-12 12:18:59

标签: c# asp.net

我需要将word文件上传到我的解决方案文件中的文件夹,以便我可以将w.r.t显示给已上传它的每个用户。我成功将文件上传到文件夹。现在,我想将用户的详细信息和上传的单词发送给系统管理员。

但我正面临System.UnauthorizedAccessException。在下面的代码行中。

Msg.Attachments.Add(new Attachment((Server.MapPath(filePath)))); 

详细的异常消息如下:

  

* ASP.NET无权访问所请求的资源。考虑将资源的访问权限授予ASP.NET请求   身份。 ASP.NET具有基本进程标识(通常是   IIS 5上的{MACHINE} \ ASPNET或IIS 6和IIS 7上的网络服务,以及   IIS 7.5上配置的应用程序池标识,如果使用的话   该申请不是冒充。如果申请是   冒充通过,身份将是   匿名用户(通常是IUSR_MACHINENAME)或经过身份验证的用户   请求用户。要授予对文件的ASP.NET访问权限,请右键单击该文件   在文件资源管理器中,选择“属性”并选择“安全”选项卡。   单击“添加”以添加适当的用户或组。突出显示   ASP.NET帐户,并选中所需访问的框。*

请帮我解决问题..

3 个答案:

答案 0 :(得分:2)

向ASP.Net帐户或网络服务帐户授予完全权限。或检查这些帐户是否具有Temp文件夹的完全访问权限...

答案 1 :(得分:0)

我同意@ Lingaraj建议的解决方案,请检查IIS_IUSERS用户是否对您上传文件的文件夹具有必要的权限。

答案 2 :(得分:-2)

将Everyone的权限授予您部署网站的文件夹。