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.