文件上传c# asp.net

本文关键字:asp net 文件 | 更新日期: 2023-09-27 18:08:31

我试图在asp.net中上传文件,并设置要保存的特定路径。windows用户。

它输出了一个错误:

System.UnauthorizedAccessException was unhandled by user code
  Message=Access to the path 'C:'Users'USER'Desktop'fyp2'CMS TEST4'CMS'CMS'Upload' is denied. 
我的代码是:
 var guid = Guid.NewGuid();
 if (File.HasFile)
 {
   var length = File.PostedFile.FileName.ToString().Length;
   var ind = File.PostedFile.FileName.ToString().IndexOf('.');
   var sdfs=guid.ToString()+File.PostedFile.FileName.ToString().Substring(ind, length - ind);
   File.PostedFile.SaveAs("C:''Users''USER''Desktop''fyp2''CMS TEST4''CMS''CMS''Upload");
 }

文件上传c# asp.net

. NET工作进程没有访问该路径的权限。默认情况下,我认为IIS工作进程在网络服务帐户下运行。您可以将文件夹的写权限添加到该帐户,也可以使用不同的身份(即具有写权限的用户)设置新的应用程序池。

就像错误提示的那样简单,您的应用程序要求文件夹具有适当的写权限。

我假设这是一个Web应用程序。在这种情况下,您需要IIS用来运行应用程序的用户对指定的文件夹具有写权限。

用户目录是相当锁定的。如果web服务器运行的帐户不是指定的用户,默认情况下,它将无权访问该路径。您可以将该路径的显式访问权限授予运行web服务器的帐户,或者在该路径之外创建一个具有适当权限的文件夹,并在用户桌面上创建一个链接。

当前用户没有保存权限。

在写入前尝试使用FileSystemRightsAccessControlType.Allow来了解目标的权限信息。