********************************* 思路壹(也是网络上铺天盖地的通俗解决方案)
原因:
这是因为先安装了 .NET Framework 4, 随后启用了 .NET Framework 3.5 WCF HTTP 激活,则会发生此错误。
解决办法
微软官方对该问题也作了解答: http://msdn.microsoft.com/zh-cn/library/aa751852.aspx 只需要已管理员用户在cmd中运行aspnet_regiis.exe -i -enable即可。
以上解决了一个WCF服务,但是我再次发布了一个WCF服务的时候,又开始提示这个错误了,
这些应该是别的地方哪里出现错误了...
********************************* 思路贰
原因分析:我的操作系统是64位的,网站的应用程序池选择的是“DefaultAppPool”。它的.NET CLR 版本是v4.0,托管管道模式是集成。据了解,64位操作系统托管管道模式要选择经典模式。 解决办法:在IIS中设置网站应用程序池为“.NET v4.5 Classic”。它的.NET CLR版本是v4.0,托管管道模式是经典。然后在此应用程序池的高级设置中设置“启用 32 位应用程序”的值为“True”,保存即可。
(按此思路,设置“DefaultAppPool”的托管管道模式为经典也行,但是我的原则是尽量少地改动。。)