2010-04-13 25 views
3

我有一个简单的基于REST的服务,我尝试使用ChannelFactory创建客户端代理。我想没有配置文件,所以我试图在代码中做到这一点,我相信我有我曾经在.config中的一切,除了行为。谁能告诉我怎样才能得到这个配置到C#代码:WCF使用ChannelFactory.CreateChannel与webHttp行为

<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); 

回答

12

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

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

source

+0

由于柯克。我还发现WebChannelFactory ,它为我添加了正确的绑定和行为。 – BrettRobi 2010-04-13 16:25:04

相关问题