WCF hosted in a Web application and compatibility mode

Posted by DotnetDude on Stack Overflow See other posts from Stack Overflow or by DotnetDude
Published on 2010-03-03T22:06:10Z Indexed on 2010/03/08 7:21 UTC
Read the original article Hit count: 327

Filed under:
|
|
|

I have a WCF service hosted in a web application (IIS). I need to expose 1 end point over wsHttp and the other over netTcp. I am on a IIS7 environment that makes it possible for me to host non HTTP based services. Anyways, when I browse the .svc file using a browser, I get the error:

The service cannot be activated because it does not support ASP.NET compatibility. ASP.NET compatibility is enabled for this application

By googling, I realized that WCF runs in two modes - Mixed and ASP.NET compatible. When I apply the attribute

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 

However, it appears that once I apply this attribute to the Service Contract implementation, I cannot use a non HTTP binding.

How do I set it up so that:

  • I can support non HTTP endpoints
  • I can host the service on a Web app
  • I don't create multiple services one with aspnet compatibility turned on and the other turned off

© Stack Overflow or respective owner

Related posts about wcf

Related posts about wcfservice