我可以在任何.NET客户端中使用OperationContextScope吗?
问题描述:
我正在探索在从.NET客户端调用基于Java的服务时将soap头部注入出去的消息。我可以在任何.NET客户端中使用OperationContextScope吗?
我看到OperationContextScope最适合我的要求,如下所示,并且在初始测试中工作正常。我想确保我没有犯这样的错误,因为我的应用程序是.NET控制台批处理。在.NET控制台应用程序的上下文中是否会有使用此类的问题?
我使用SVCUITIL通过传递wsdl & xsd创建了用于JAVA服务的代理。
using (var client = new GetXXXXDetailsServiceClient())
{
using (new OperationContextScope(client.InnerChannel))
{
var customerHeader = new Headers(SamlAssertion.InnerXml.ToString());
OperationContext.Current.OutgoingMessageHeaders.Add(customerHeader);
var res = client.GetXXXXDetails();
}
}
答
看来我们可以在任何地方使用这个OperationContextScope作为我的应用在DEV env中运行良好。