web-dev-qa-db-ja.com

アプリケーションがプリコンパイルされているため、ディレクトリ「/ website / App_Code /」は許可されていません

プリコンパイル済みのWebアプリを実行しているときに発生する以下の問題を解決するにはどうすればよいですか?

Server Error in '/CRM' Application.
    The directory '/CRM/App_Code/' is not allowed because the application is precompiled.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Web.HttpException: The directory '/CRM/App_Code/' is not allowed because the application is precompiled.

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the Origin and location of the exception can be identified using the exception stack trace below.

    Stack Trace:


    [HttpException (0x80004005): The directory '/CRM/App_Code/' is not allowed because the application is precompiled.]
       System.Web.Compilation.CodeDirectoryCompiler.GetCodeDirectoryAssembly(VirtualPath virtualDir, CodeDirectoryType dirType, String assemblyName, StringSet excludedSubdirectories, Boolean isDirectoryAllowed) +8777420
       System.Web.Compilation.BuildManager.CompileCodeDirectory(VirtualPath virtualDir, CodeDirectoryType dirType, String assemblyName, StringSet excludedSubdirectories) +125
       System.Web.Compilation.BuildManager.CompileCodeDirectories() +387
       System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +248

    [HttpException (0x80004005): The directory '/CRM/App_Code/' is not allowed because the application is precompiled.]
       System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +62
       System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +421
       System.Web.Compilation.BuildManager.CallAppInitializeMethod() +31
       System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +605

    [HttpException (0x80004005): The directory '/CRM/App_Code/' is not allowed because the application is precompiled.]
       System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +8946484
       System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +97
       System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +258


    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1
32
shalsoft

ケースに応じて、次の3つのシナリオが考えられます。

このリンクを参照してください http://www.beansoftware.com/ASP.NET-FAQ/Directory-App_Code-Not-Allowed.aspx

基本的に、アプリをプリコンパイルした場合、App_Codeフォルダーはありません。後で追加した場合は、削除する必要があります。

OR

どういうわけか、precompiled.configファイルが本番環境になった可能性があります。そのファイルを削除すると、App_Codeディレクトリエラーが解決されます。

27
StackTrace

「precompiledApp.config」ファイルを削除すると、問題が解決するはずです。

12
Vlad Irimia

私の場合、「ASPXファイルは更新可能」オプションをオフにしてコンパイルしました。 IIS私のウェブサイトが実行されていたのは好きではなかったと思います。

[ASPXファイルは更新可能]オプションをオンにして再コンパイルすると、問題はなくなりました。

1
George

私の場合、誤ってクラスを公開せざるを得なかったため、この問題が発生しました。

解決策は、問題のあるクラスを更新してから、「宛先サイトから未使用のファイルを削除する」オプションを使用して再度公開することでした。 (パブリッシュモーダルオプションの下にあります)

1
MunsterMan