WCF与3.5和4.0一起

时间:2010-04-20 13:25:37

标签: wcf .net-3.5 .net-4.0

安装.net 4后,有没有人设法在IIS7上以2.0集成模式成功运行wcf?

我发现安装.net 4删除了svc的2.0处理程序并用.net 4版本替换它们(这导致我的v3.5站点出现404.17错误),我设法通过运行让我的3.5站点再次运行来自v3.0文件夹(Windows Commuication Foundation)的ServiceModelReg.exe / i但删除了4.0映射,因此它们似乎是互斥的?

有关如何在同一台IIS7服务器上运行4.0和3.5 WCF站点的任何建议吗?

编辑 由于.net 4,经典和集成的2.0和4.0,有4个应用程序池。该网站仍在使用集成的2.0应用程序池。事实上,svc映射指向4.0 isapi dll,我添加了2.0(它修改了web.config以提供本地映射)但它没有效果。

3 个答案:

答案 0 :(得分:2)

我不想回答我自己的问题但是......

我运行ServiceModelReg.exe(here)来修复上一次安装,这给我留下了我期望的svc映射(指向v2.0和v4.0 isapimodule)。不确定这只是我所做的4.0安装的问题,还是3.5之后安装4.0的一般问题。

答案 1 :(得分:1)

我在新的Win2008 R2测试机器中遇到404.17错误。

我在blog post找到的解决方案正常工作,即在“.NET Framework 3.5.1功能”中启用WCF激活功能

答案 2 :(得分:0)

我没有测试过这种情况。但是,如果Microsoft的设计功能实现中没有错误,我认为以下内容应该有效:

对于每个网站,您都可以选择应用程序池(在IIS管理器中的虚拟目录配置的“高级设置”中)。 .NET 4.0安装后存在一些默认的应用程序池:“ASP.NET v4.0”,“ASP.NET v4.0 Classic”,“Classic .NET AppPool”和“DefaultAppPool”。您还可以创建更多应用程序池。对于每个池,您可以选择是使用4.0还是3.5(v2.0.50727).NET版本。

我希望你能解决问题。

祝你好运