【发布时间】:2012-01-17 10:20:20
【问题描述】:
您会推荐哪种最佳 ChannelFactory 包装器? 我正在寻找一种简单的方法来处理频道创建过程并在需要时重新打开。
【问题讨论】:
标签: wcf channelfactory
您会推荐哪种最佳 ChannelFactory 包装器? 我正在寻找一种简单的方法来处理频道创建过程并在需要时重新打开。
【问题讨论】:
标签: wcf channelfactory
ChannelFactory 的频道创建过程已经非常简单。
我猜你是否使用 svcutil 预先生成了一个服务代理,它会为你生成一个包装器。但我认为包装器使用起来不会更简单。
// Create service proxy on the fly
var factory = new ChannelFactory<IMyServiceContract>("NameOfMyClientEndpointInConfigFile");
var proxy = factory.CreateChannel();
// Create data contract
var requestDataContract = new MyRequestType();
// Call service operation.
MyResponseType responseDataContract = proxy.MyServiceOperation(requestDataContract);
在上面的示例中,IMyServiceContract 是您的服务合同,MyRequestType 和 MyResponseType 是您的数据合同,您可以通过引用服务也引用的程序集(定义这些类型)来使用它们。
【讨论】: