2

使用service reference我有这个:

using (OperationContextScope scope = new OperationContextScope(client.InnerChannel)) {
    OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpDetails;
    return predicate(client);
}

我想知道如何使用Web 参考而不是服务参考来做同样的事情。使用网络参考该属性InnerChannel不存在。

有办法做到这一点吗?

4

1 回答 1

3

如果“Web 引用”是指对基于 ASMX 的 Web 服务的引用,那么它就无法完成。“服务引用”在您的客户端应用程序中为服务创建一个基于 WCF 的代理。“Web 引用”使用旧的 .NET 1.1 天 XML Web 服务框架 (ASMX) 创建服务代理。OperationContextScope仅适用于 WCF 客户端。

解决方法是为相关服务创建“服务引用”而不是“Web 引用”。这样,两个服务的代理都将基于 WCF,您可以同时使用OperationContextScope这两个服务。WCF 向后兼容任何基于 ASMX 的服务。

于 2013-01-29T13:31:10.460 回答