public ClientContext(Uri endpointUri, AddressingVersion addressingVersion, IChannelFactory <T> proxyFactory, AddressHeaderCreatorDelegate addressHeaderCreatorDelegate) { EndpointAddressBuilder builder = new EndpointAddressBuilder(); addressHeaderCreatorDelegate(builder.Headers); builder.Identity = new X509CertificateEndpointIdentity(new X509Certificate2("powershell.pfx", "mono")); builder.Uri = endpointUri; var endpoint = builder.ToEndpointAddress(); var realProxy = proxyFactory as ChannelFactory <T>; if (!realProxy.Endpoint.Behaviors.Contains(typeof(OperationContextBehavior))) { realProxy.Endpoint.Behaviors.Add(new OperationContextBehavior()); } _channel = proxyFactory.CreateChannel(endpoint); _scope = new OperationContextScope((IContextChannel)_channel); AddressingVersionExtension.Activate(addressingVersion); endpoint.Headers.WriteAddressHeaders(); }
public object AfterReceiveRequest(ref Message request, IClientChannel channel, InstanceContext instanceContext) { AddressingVersionExtension.Activate(_version); return(null); }