views:

220

answers:

3

Has anyone managed to run wcf successfully in 2.0 integrated mode on IIS7 when .net 4 has been installed?

I found that installing .net 4 removed the 2.0 handlers for svc and replaced them with .net 4 versions (this led to a 404.17 error in my v3.5 site), I managed to get my 3.5 site working again by running ServiceModelReg.exe /i from the v3.0 folder (Windows Commuication Foundation) but that removed the 4.0 mappings so they seem to be mutually exclusive?

any advise on how to run a 4.0 and 3.5 WCF site on the same IIS7 server?

edit There where 4 app pools due to .net 4, classic and integrated 2.0 and 4.0. The site was still using the integrrated 2.0 app pool. It was the fact that the svc mapping was pointing to the 4.0 isapi dll, I added the 2.0 back in (which ammended the web.config to give a local mapping) but it had no effect.

A: 

I didn't tested this situation. But I think following should works if no bugs exists in the Microsoft implementation of designed features:

For every web site you can choose application pool (in "Advanced settings" of virtual directory configuration in IIS Manager). Some default Application Pools exists after .NET 4.0 installation: "ASP.NET v4.0", "ASP.NET v4.0 Classic", "Classic .NET AppPool" and "DefaultAppPool". You can also create more application pools. For every pool you can choose whether 4.0 or 3.5 (v2.0.50727) .NET version are used.

I hope it you'll fix you problem with the way.

Best regards

Oleg
@oleg thanks for the response, i edited to give more info regarding the app pools in use
Pharabus
+1  A: 

I hate to answer my own question but..

I ran the ServiceModelReg.exe (here) to repair the previous install, this left me with both the mappings i expected for svc (pointing to v2.0 and v4.0 isapimodule). Not sure if it was just an issue with the 4.0 install i did or a general issue with installing 4.0 after 3.5.

Pharabus
A: 

I was getting the 404.17 error in a new Win2008 R2 test machine.

Solution I found at this blog post worked fine, i.e. enabling the WCF Activation feature in the ".NET Framework 3.5.1 Features"

SteveC