In my previous posts on this topic, I have explained about the following new features in Windows Communication Foundation v 4.5:
Now, here in this WCF Tutorial, I'll discuss the following new and exciting features in WCF v4.5.
- ASP.NET Compatibility Mode Default Changed
WCF - ASP.NET Compatibility Mode Default Changed
While working with previous version of Windows Communication Foundation, if we wanted that our WCF request should be treated in the same way as an ASP.NET request, for example, if we wanted to get access to
HttpContext, we need to do a couple of steps to enable this feature in WCF. Because, by default, call to a WCF service bypass ASP.NET pipeline as opposite to normal ASMX web services.
Following are the steps we do to enable it:
- In web.config, set
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
AspNetCompatibilityRequirements attribute to WCF Service with
AspNetCompatibilityRequirementsMode set to either
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class MyWCFService : IMyWCFService
In WCF 4.5,
AspNetCompatibilityRequirementsAttribute is, by default, set to "
Allowed". So, giving complete control to features in ASP.NET pipeline.
WCF - BasicHttpsBinding
As we have already discussed in earlier parts of this WCF 4.5 Tutorial series that v4.5 has simplified a lot of things for the developers. This new
BasicHttpsBinding does the same for us.
BasicHttpBinding is available in Windows Communication Foundation since initial versions. The new
BasicHttpsBinding is almost similar to
BasicHttpBinding with the following two exceptions:
- Default Security mode = Transport
- Default Client Credential Type = None
So, earlier with
BasicHttpBinding, declaring transport security based endpoint in WCF is as follows:
<security mode="Transport" />
But using WCF 4.5, the same above configuration is simplified as follows:
Definitely, this cool feature simplifies configuration and increases WCF developer productivity.
Other Related Tutorials that Might Be of Interest