我目前正在开发一个WCF服务,该服务可以通过其他服务在一些操作中提交信息.第二个服务的代理是通过强类型ProxyFactory<T>类生成的.我没有遇到任何问题,但听到我在拨打电话时应该执行以下操作:
using (new OperationContextScope((IContextChannel)_service))
_service.Send(message);
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:什么时候创建这个新的OperationContextScope合适的,为什么?
谢谢!
Aja*_*kar 16
如果您正在使用回调,或者如果要修改消息或标题,则需要使用OperationContextScope.您的服务可能需要在调用另一个服务时修改传出标头.
当你建立时,OperationContextScope你可以:
OperationContext对象关联的通道或(如果通道实现System.ServiceModel.Channels.ISession)关联通道的会话标识符.您调用的其他服务是基于会话的服务吗?您可能需要查看其示例客户端代码或文档(如果可用).