从 .Net Framework 4.6 升级到 .Net Framework 4.8 后无法访问 Web 应用程序

Unable to access web application after upgrading from .Net Framework 4.6 to .Net Framework 4.8

我有一个 Web 应用程序 运行 在 IIS 6.0 上,目标是 .Net Framework 4.6.1。我最近将 IIS 升级到 版本,并且在我的开发机器和 Web 服务器上都安装了 .Net Framework 4.8。我已按照概述的步骤 here 确认服务器上 运行 版本为 4.8。我还确保通过转到项目 属性 页面将目标框架更改为 4.8。在IIS 10新建一个应用程序,将发布的文件移动到目录下,访问应用程序URL,发现如下错误:

BC31007: Unable to open module file 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.0.vb': System Error &Hc0000005& (Visual Basic internal compiler error)

c:\windows\system32\inetsrv> "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\vbc.exe" /t:library /utf8output /R:"C:\windows\Microsoft.Net\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.IdentityModel\v4.0_4.0.0.0__b77a5c561934e089\System.IdentityModel.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Web\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Web.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.Activities.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_64\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\assembly\dl3a54d065fed79_c7a0d601\App_Web_the_application_page.aspx.cdcab7d2.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.WorkflowServices\v4.0_4.0.0.0__31bf3856ad364e35\System.WorkflowServices.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.ComponentModel.DataAnnotations\v4.0_4.0.0.0__31bf3856ad364e35\System.ComponentModel.DataAnnotations.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.DataSetExtensions\v4.0_4.0.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.CSharp\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft.CSharp.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Services\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.DynamicData\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.DynamicData.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.ApplicationServices.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activation\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activation.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activities.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\assembly\dl3c4b96c5\b638438d_bca0d601\Interop.IWshRuntimeLibrary.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Entity\v4.0_4.0.0.0__b77a5c561934e089\System.Web.Entity.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Extensions\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.Extensions.dll" /R:"C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" /out:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.dll" /D:DEBUG=1 /debug+ /nowarn:41008,40000,40008 /define:_MYTYPE="Web" /imports:Microsoft.VisualBasic,System,System.Collections,System.Collections.Specialized,System.Configuration,System.Text,System.Text.RegularExpressions,System.Web,System.Web.Caching,System.Web.SessionState,System.Web.Security,System.Web.Profile,System.Web.UI,System.Web.UI.WebControls,System.Web.UI.WebControls.WebParts,System.Web.UI.HtmlControls /warnaserror- /optionInfer+ "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.0.vb" "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=10=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.1.vb"

Microsoft (R) Visual Basic 编译器版本 14.8.3761 对于 Visual Basic 2012 版权所有 (c) Microsoft Corporation。保留所有权利。

此编译器作为 Microsoft (R) .NET Framework 的一部分提供,但仅支持最高为 Visual Basic 2012 的语言版本,不再是最新版本。对于支持较新版本的 Visual Basic 编程语言的编译器,请参阅 http://go.microsoft.com/fwlink/?LinkID=533241

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=30=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.0.vb : 错误BC31007:无法打开模块文件 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=25=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.0.vb':系统错误 &Hc0000005&(Visual Basic 内部编译器错误) C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=30=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.1.vb:错误BC31007:无法打开模块文件 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\the_application[=26=]d68bd1ec2220e1\App_Web_the_application_page.aspx.cdcab7d2.foubj9oz.1.vb':系统错误 &Hc0000005&(Visual Basic 内部编译器错误)

我还确保在 IIS 中为应用程序启用目录浏览。非常感谢对此的任何帮助。

~比利

将应用池的身份切换到本地系统,将应用池的权限提升到最高级别,可以很好的解决问题。