您的ASP.NET帐户{MACHINE}\ASPNET
对该位置没有写入权限.这就是它失败的原因.
考虑向ASP.NET请求标识授予对资源的访问权限.
右键点击下载文件夹Properties > Security Tab > Edit > Add > locations > choose your local machine > click OK > Type ASPNET below "Enter the object name to select" > Click Check Names
现在这应该显示你的本地{MACHINENAME}\ASPNET
帐户,然后你设置这个帐户的写入权限.
否则,如果应用程序是通过<identity impersonate="true"/>
模拟的,则身份将是匿名用户(通常是IUSR_MACHINENAME
)或经过身份验证的请求用户.
或者仅使用专用位置在ASP.NET中存储文件,该位置为App_Data
.要创建它,请右键单击您的ASP.NET项目(在Visual Studio中)Add > Add ASP.NET Folder > App_Data
.然后,您将能够将数据保存到此位置:
var path = Server.MapPath("~/App_Data/file.txt");
System.IO.File.WriteAllText(path, "Hello World");