Exemplo n.º 1
0
        public string  SampleMethod(string msg)
        {
            InstanceContext ic = OperationContext.Current.InstanceContext;

            //Retrieve the InstanceContext extension you added during creation time.
            MyInstanceContextExtension extension = ic.Extensions.Find <MyInstanceContextExtension>();

            Console.WriteLine("InstanceContext ID : " + extension.InstanceId);
            Console.WriteLine("Service object ID : " + this.id);

            // Retrieve the ChannelDispatcher IContextChannel extension.
            ChannelTrackerExtension channelExtension = OperationContext.Current.Channel.Extensions.Find <ChannelTrackerExtension>();

            Console.WriteLine("Channel tracker says the channel hash code: {0}.", channelExtension.ChannelHashCode);

            // Retrieve the service host custom context:
            ServiceHostContext srvContext = OperationContext.Current.Host.Extensions.Find <ServiceHostContext>();

            if (srvContext != null)
            {
                Console.WriteLine("ServiceHost object hash: " + srvContext.ID);
            }
            //you have the state object and can retrieve whatever info you need
            Console.WriteLine("The caller said: \"{0}\"", msg);
            return("The service greets you: " + msg);
        }
Exemplo n.º 2
0
        public void Initialize(InstanceContext instanceContext, Message message)
        {
            MyInstanceContextExtension extension = new MyInstanceContextExtension();

            //Add your custom InstanceContex extension that will let you associate state with this instancecontext
            instanceContext.Extensions.Add(extension);
        }