WCF使用ChannelFactory.CreateChannel和webHttp行为

时间:2010-04-13 01:03:46

标签: wcf wcf-client

我有一个简单的基于REST的服务,我正在尝试使用ChannelFactory创建客户端代理。我希望没有配置文件,所以我试图在代码中执行此操作,我相信我拥有我以前在.config中所拥有的一切,除了行为。任何人都可以告诉我如何将此配置转换为c#代码:

  <behaviors>
   <endpointBehaviors>
    <behavior name="InitBehavior">
     <webHttp />
    </behavior>
   </endpointBehaviors>
  </behaviors>

以下是我现在删除的c#代码:

var endpoint = new EndpointAddress(urlCommServer);
var binding = new WebHttpBinding();
return ChannelFactory<IInitialization>.CreateChannel(binding, endpoint);

1 个答案:

答案 0 :(得分:12)

试试这个。您需要将行为添加到ChannelFactory。

var factory = new ChannelFactory<IInitialization>(binding, endpoint);
var behavior = new WebHttpBehavior();
factory.Endpoint.Behaviors.Add(behavior);
var channel = factory.CreateChannel();

source