Click here to Skip to main content
15,891,698 members
Articles / Programming Languages / C#
Tip/Trick

How to add headers in a WF service client and how to get Headers value in WF service

Rate me:
Please Sign up or sign in to vote.
5.00/5 (1 vote)
10 Apr 2012CPOL 22.4K   2   1
Add headers in WF service client and get headers value in WF service.

For adding headers in a client application, add a service reference in the client application.

And write the following code for adding headers:

C#
using (WFServiceRef.ServiceClientproxy = new WFServiceRef.ServiceClient())
{
    using (newSystem.ServiceModel.OperationContextScope(proxy.InnerChannel))
    {
        MessageHeader<string> mess = newMessageHeader<string>(
          System.Security.Principal.WindowsIdentity.GetCurrent().Name);
        //Assigning Name and NameSpace to the message header value at client side
        System.ServiceModel.Channels.MessageHeader header = mess.GetUntypedHeader("UserID", "ns");
        //Adding message header with OperationContext which will be received at the server side
        OperationContext.Current.OutgoingMessageHeaders.Add(header);
        varx = proxy.GetData(2);
        Response.Write(x);
    }
}

And in the WF service, we will create a class and call the function of the class in the WF service using InvokeMethod.

And the class will look like this:

C#
using System.Web;
using System.ServiceModel;
using System.ServiceModel.Channels;
namespace WFSERVICE
{
    public class TestClass
    {
        public void SomeMethod()
        {
            EndpointAddress clientAddress = OperationContext.Current.Channel.RemoteAddress;
            MessageHeaders headers = OperationContext.Current.RequestContext.RequestMessage.Headers;
            var userID = OperationContext.Current.IncomingMessageHeaders.GetHeader<string>("UserID","ns");
        }
    }
}

And the workflow will look like this:

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionThank you.. Pin
Robert den Boer14-Aug-14 16:52
professionalRobert den Boer14-Aug-14 16:52 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.