WCF с использованием ChannelFactory.CreateChannel с поведением webHttp - PullRequest
3 голосов
/ 13 апреля 2010

У меня есть простой сервис на основе 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 Ответ

12 голосов
/ 13 апреля 2010

Попробуй это. Вам нужно добавить поведение в ChannelFactory.

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

источник

...