Windows Communication Foundation (WCF) is the basis for building connected systems on the Windows platform using .NET, making it possible to build secure, reliable, and transacted services that can be composed into service-oriented applications. This course explores some of the more advanced aspects of WCF-based service development, such as hosting, WCF runtime internals, and extensibility.
Aaron is a co-founder of Pluralsight where he serves as the Chief Executive Officer. Aaron has authored numerous Pluralsight courses in the areas of Azure (cloud computing), WCF, Web services, XML and BizTalk Server. Over the years, Aaron has written numerous articles, whitepapers, and books and he's a contributing editor with MSDN Magazine where he authored The XML Files and Service Station columns for years. Aaron frequently speaks at industry events including TechEd, PDC, and VSLive!
Runtime Execution Hi. This is Aaron Skonnard with Pluralsight, and I'll be presenting this module on the WCF runtime execution environment. At this point, we assume you have a solid understanding of the WCF programming model and are ready to dive into the runtime in more detail. We'll be focusing specifically on instancing, threading, and throttling. In the area of instancing, we'll look at several different instancing modes that you can apply to your services: PerCall, Single, PerSession, and a new feature they shipped in. NET 3. 5 called Durable services. We'll then turn our attention to throttling, and we'll look at various aspects that you can configure on the ServiceThrottlingBehavior. And then finally we'll turn our attention to concurrency and focus on the three primary concurrency modes supported by WCF: Single, Reentrant, and Multiple.
Extensibility Hi, this is Aaron Skonnard with Pluralsight, and I'll be presenting this module on WCF Extensibility. At this point, we assume that you have some pretty thorough understanding of the WCF programming model and its various features, and now we're ready to dive into the various extensibility layers that have been provided within the framework. WCF is by far one of the most extensible frameworks that I have ever personally worked with as a developer, so there are lots of opportunities here to bend WCF to your will. We'll start this module by reviewing the WCF runtime architecture, and after that we'll discuss the various runtime components that are made available through the dispatch and client runtime layers. This is where you can inject your own custom interceptor components. After that, we'll discuss how to write custom behaviors that allow you to apply those runtime interception extensions into your WCF applications. There are four different types of behaviors that we'll talk about, and we'll talk about different techniques that are made available for applying those behaviors into your applications. And then finally, we'll show you several complete examples of how you can actually implement these WCF behaviors. Then we'll discuss how to share state throughout the various extension objects that you might use within a WCF pipeline. And finally, we'll discuss how to make all these extensibility components easy to use by writing custom ServiceHosts and custom channel factory classes.