时间:2021-05-23
From:http://support.microsoft.com/kb/2015129
Symptoms
Consider the following scenario. Youinstall the .NET Framework 4.0. Then, youinstall an earlier version of the .NET Framework, or you enable.NET 3.0 WCF HTTP Activation. In this scenario, you may receive the followingerror message when you when runapplications that are hosted on Internet Information Services (IIS):
Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
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.TypeLoadException: Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
Cause
This issue occurs because the Applicationhost.config file for Windows Process Activation Service (WAS) has the following section defined, and this section is incompatible with the .NETFramework4.0:
<add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
This section should be defined as follows:
<add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler,runtimeVersionv2.0" />
NoteYou can find the Applicationhost.config file in the following location:
%windir%\system32\inetsrv\config
Resolution
To resolve this issue,run the following command line:
aspnet_regiis.exe /iru
The Aspnet_regiis.exe file can be found in one of the following locations:
%windir%\Microsoft.NET\Framework\v4.0.30319
%windir%\Microsoft.NET\Framework64\v4.0.30319 (on a 64-bit computer)
注意
以上方案在win8系统中无效,因为在最后一步运行aspnet_regiis.exe /iru 命令时会失败,所以解决方案是找到Applicationhost.config 文件(目录在%windir%\system32\inetsrv\config),然后把文件中的:
<add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />
改为:
<add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler,runtimeVersionv2.0" />
我目前只找到这种方案,如果有更好方案欢迎指出。
作者:Artwl
出处:http://artwl.cnblogs.com
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Couldnotloadtype'System.ServiceModel.Activation.HttpModule'fromassembly'System.S
有效解决win8/8.1系统安装.netframework3.5出现0x800F0906代码错误解决方案一、首先打开windows更新,检查是否有系统更新要安装
Python中‘unicodeescape'codeccan'tdecodebytesinpositionXXX:trun错误解决方案背景描述今天在运用Pyth
解决方案如下,其它框架雷同。源代码(/system/libraries/upload.php199line)$this->file_type=preg_repl
最近有部分网友反馈安装Win8系统后,点击鼠标右键的时候,系统会没有响应或者变卡。针对这个问题,不少Win8大神给出了不少解决方案,以下小编汇总一下一些比较靠谱