Programmatically finding Binding Elements in WCF Binding

Binding is one of the important aspect of WCF Programming. It deals with, “How Service and client will talk to each other?” Binding is made up of different binding elements. When different binding elements are stacked together they form a Binding. Different binding types are made up of different binding elements.

Always a question arises that, “What are the different binding elements of a particular binding? “

And we can find solution of above question through code. What all we need to do

1. Create instance of Binding

2. Enumerate through Binding elements.

We are going to create console application to enumerate through all the binding elements in a binding.

Add below references in console application project,

clip_image001

We are going to write a function. This function will take object of a Binding as input parameter and prints all the binding elements.

 

clip_image003

Above function is very simple, just enumerating above all the binding elements.

We may call above function as below,

clip_image004

Full source code is as below,

Program.cs



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.ServiceModel.Channels; 

namespace ConsoleApplication10
{
    class Program
    {
        static void Main(string[] args)
        {

            EnumerateBindingElements(new BasicHttpBinding());
            EnumerateBindingElements(new NetMsmqBinding());
            EnumerateBindingElements(new WSHttpBinding());
            Console.ReadKey(true);

        }

        static void EnumerateBindingElements(Binding binding)
        {
            Console.WriteLine("Binding : " + binding.GetType().Name);
            BindingElementCollection bindingElements = binding.CreateBindingElements();
            foreach (BindingElement e in bindingElements)
            {
                Console.WriteLine(e.GetType().FullName);
            }          

        }
    }
}


 

Output

clip_image006

2 thoughts on “Programmatically finding Binding Elements in WCF Binding

  1. Pingback: Distributed Weekly 92 — Scott Banwart's Blog

  2. Pingback: Monthly Report February 2011: Total Posts 14 « debug mode……

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s