public void CanUseOperationContextWithClient()
{
windsorContainer.Register(
Component.For<IOperations>()
.Named("operations")
.AsWcfClient(new DefaultClientModel()
{
Endpoint = WcfEndpoint
.BoundTo(new NetTcpBinding { PortSharingEnabled = true })
.At("net.tcp://localhost/Operations")
})
);
var client = windsorContainer.Resolve<IOperations>("operations");
using (new OperationContextScope(WcfContextChannel.For(client)))
{
var header = MessageHeader.CreateHeader("MyHeader", "", "MyValue", false);
OperationContext.Current.OutgoingMessageHeaders.Add(header);
Assert.AreEqual(42, client.GetValueFromConstructor());
}
}