Configuration binding extension 'system.serviceModel/bindings/*' could not be found error on upgrade to .Net 4.5 RTM

If you have a WCF service with netHttpBinding/basicHttpsBinding/udpBinding endpoint using the .net 4.5 RC bits and your service fails to activate with this error message on upgrading to .net 4.5 RTM bits, here is what you need to do.  

Configuration binding extension 'system.serviceModel/bindings/netHttpBinding' could not be found. Verify that this binding extension is properly registered in system.serviceModel/extensions/bindingExtensions and that it is spelled correctly.

OR

Configuration binding extension 'system.serviceModel/bindings/basicHttpsBinding' could not be found. Verify that this binding extension is properly registered in system.serviceModel/extensions/bindingExtensions and that it is spelled correctly.

OR

Configuration binding extension 'system.serviceModel/bindings/udpBinding' could not be found. Verify that this binding extension is properly registered in system.serviceModel/extensions/bindingExtensions and that it is spelled correctly.

If its web hosted, add this setting <httpRuntime targetFramework="4.5" /> to your web.config to solve the issue.

<system.web>

    <compilation debug="true" targetFramework="4.5" />

    <httpRuntime targetFramework="4.5"/>

  </system.web>

If your app is self hosted, make sure you compile your project with targetFramework v4.5.

netHttpBinding, basicHttpsBinding and udpBinding work only in binaries built with target framework v4.5. Adding a httpRuntime setting to web.config will make sure that the IIS application pool created for your app has a version v4.5.

Comments

  • Anonymous
    January 02, 2014
    This didn't help in my case...

  • Anonymous
    January 03, 2014
    @Me, can you describe the issue you encounter.

  • Anonymous
    January 18, 2014
    I was having this exact same problem and this solved my problem perfectly. Thanks!

  • Anonymous
    February 24, 2014
    great!

  • Anonymous
    April 29, 2014
    Hi, Your post was very helpful. Thank you.

  • Anonymous
    December 27, 2014
    This worked for me also, thanks!

  • Anonymous
    February 01, 2015
    Thanks, this worked!

  • Anonymous
    August 23, 2015
    That is interesting -- for some reason my web.config only had <httpRuntime/> so I adjusted it appropriately with the <httpRuntime targetFramework="4.5"/> and it's working now.  Someone else in a different post said that the app pool could be 4.0 and this would work (which is still true apparently), but your comment about httpRuntime seems to clarify this further?