OperationContextScope在处理时也会处理通信通道吗?
在下面的示例中,当ServiceMethod
第二次执行时,我得到一个“通信对象,System.ServiceModel.Channels.ServiceChannel,因为它处于Faulted状态”而无法用于通信:
clientProxy = ...
public int ServiceMethod()
{
using(OperationContextScope c = new OperationContextScope((IClientChannel)clientProxy))
{
//Add request header
OperationContext.Current.OutgoingMessageHeaders.Add(...)
clientProxy.method(...); //When this execute the second time, a fault state exception occur
}
//Add reply header
OperationContext.Current.OutgoingMessageHeaders.Add(...)
return 1;
}
此外,如果它是重要信息,clientProxy.method()会传递一个回调。
答案 0 :(得分:0)
显然,答案是否定的。我有一个OneWay方法,抛出一个未被捕获的异常。该例外从未在服务或客户端中显示过,因此抓住它很棘手。处理这个问题解决了这个问题。