未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加载类型“

windows10 64位系统 调试IIS10 ASP.NET程序的时候遇到这个问题,pageadmin程序


错误信息:

 

“/”应用程序中的服务器错误。

未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加载类型“System.ServiceModel.Activation.HttpModule”。

说明:执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.TypeLoadException: 未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加载类型“System.ServiceModel.Activation.HttpModule”。

 

错误原因:根据MSDN的解释:如果安装了 .NET Framework 4,随后启用了 .NET Framework 3.5WCF HTTP 激活,则会发生此错误。

 

解决办法:

若要解决该问题,请在 Visual Studio 2010 命令提示符下运行下面的命令行:

aspnet_regiis.exe -i -enable

或在cmd中运行:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i -enable

 

另:

执行此命令后命令提示符提示错误:

用于在本地计算机上安装和卸载 ASP.NET 的管理实用工具。 版权所有(C) Microsoft Corporation。保留所有权利。 开始安装 ASP.NET (4.0.30319.33440)。 此操作系统版本不支持此选项。管理员应使用“打开或关闭 Windows 功能”对话框、“服 务器管理器”管理工具或 dism.exe 命令行工具安装/卸载包含 IIS8 的 ASP.NET 4.5。有 关更多详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=216771。 ASP.NET (4.0.30319.33440)安装完毕。

原因分析:我的操作系统是64位的,网站的应用程序池选择的是“DefaultAppPool”。它的.NET CLR 版本是v4.0,托管管道模式是集成。据了解,64位操作系统托管管道模式要选择经典模式。


解决办法:在IIS中设置网站应用程序池为“.NET v4.5 Classic”。它的.NET CLR版本是v4.0,托管管道模式是经典。然后在此应用程序池的高级设置中设置“启用 32 位应用程序”的值为“True”,保存即可。(按此思路,设置“DefaultAppPool”的托管管道模式为经典也行,但是我的原则是尽量少地改动。。)

标签:
版权所有原创文章,转载请保留或注明出处:http://www.gxjss.cn/post/376.html

相关文章

发表评论

验证码

评论列表 (暂无评论,515人围观)

还没有评论,来说两句吧...