mscorlib.dll 中的 System.UnauthorizedAccessException

Dan*_*der 3 .net c# asp.net iis

我正在开发一个 ASP.NET 应用程序。然后我没有在Visual Studio的调试器中测试该应用程序,而是通过File Deploy将其传输到另一台服务器。该应用程序在那里运行。

关掉电脑后,我想重新开发。从那时起,我无法再在 Visual Studio 调试器/IIS 中启动我的应用程序。总是出现以下错误信息:

引发异常:mscorlib.dll 中的“System.UnauthorizedAccessException”(“对路径”C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\AspCheck_b8e5127411412.tmp“的访问被拒绝。”)

上述路径不包含任何文件。

为什么不再有集会了?这是我发布到另一个目的地时进行的特殊设置吗?

我将感谢您的帮助!

Dal*_*rzo 5

临时ASP.NET 文件是 .NET 动态存储编译站点的地方。例如,App_Code文件夹中的每个 *.cs 文件都将构建到i23y4ui .dll 中并移动到247ksdfklj文件夹。这些名称也是动态形成的。

我建议的是

选项1:

在你的 DEV 机器上你

  • 转到此文件夹:

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\

  • 停止 IIS 或 IIS Express

  • 并删除文件夹内的所有内容。这将迫使您的应用程序完全重新编译。

选项#2

是以管理员身份启动您的 Visual Studio。有时,某些 Windows 选项对某些用户来说是锁定的,这也可能导致此错误。当站点托管在 IIS 中时,这种情况更常见。

选项#3:

创建一个对“EVERYONE”具有完全访问权限的文件夹,并将其设置在 web.config 的编译元素中

<system.web>
            <compilation tempDirectory="C:\MyCompilationTest\temporary_asp_net_files\test1" />
        </system.web>
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,该路径也可能是:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files,具体取决于您的 Windows 版本。 (2认同)