Project Description
Service Helpers simplifies using WCF in a service oriented software system. Service Helpers makes working with WCF as easy as using any dependency injection framework.


WCF is a great technology for implementing a Service Oriented Architecture, but the overhead of using WCF is a lot for programmers to deal with on a daily basis. Each WCF call involves creating a WCF channel proxy. The WCF channel proxy must be closed explicitly by the client, and if an exception occurs it must be aborted. Managing the lifecycle of the proxy is a lot of effort, and is very difficult to do correctly. This project simplifies using WCF and makes using WCF as easy as using a dependency injection framework. To accomplish this ServiceHelpers creates a thin proxy that lives between your caller and the WCF proxy. This thin proxy will be generated using Reflection.Emit. With the help of this thin proxy I can manage the lifecycle of the proxy in a very controlled manner. With the help of a little code, using WCF will be as easy as generating a proxy. In fact, WCF will not even be noticeable from the perspective the programmer.

You can get DPL Service Helpers thru nuget.

With DPL Service Helpers a WCF call looks like this

            var factory = new ProxyFactory();
            var proxy = factory.Proxy<IGenericContract>();
            var result = proxy.Find(10);

Without DPL Service Helpers a WCF call looks like this

                string uri = "net.tcp://localhost:10095/servicehelpersTCP";

                var channelFactory = new ChannelFactory<IExternalServiceTcp>(
                    new NetTcpBinding(), new EndpointAddress(uri));
                var proxy = channelFactory.CreateChannel();

                    Assert.AreEqual("hi", proxy.TestMe("hi"));

                    { }
                catch (Exception ex)
                    if (channelFactory != null)



How To?


Service Helpers Presentation

About Don't Panic Labs

Located in the Historic Haymarket district of downtown Lincoln, Nebraska, we are a fast-growing startup made up of tech-sector veterans and fresh young minds that have a collective passion for technological innovation. By bringing these two groups together under one roof, Don't Panic Labs provides an environment for growth and numerous opportunities to develop solutions to real-world problems. Visit us at or at our parent company or email us at

Last edited Aug 31, 2016 at 4:24 PM by chadmichel, version 24