Проблема создания сервиса WCF с Windsor - PullRequest
3 голосов
/ 02 июня 2010

Кто-нибудь знает, как настроить WCF с помощью Windsor на IIS 7.0? Я использую последнюю версию от WCF Виндзорский ствол и Виндзор 2.1.1. Пример на http://www.castleproject.org/container/facilities/trunk/wcf/index.html устарел. Даже в демонстрационном проекте в WCF не упоминается, как настроить службу WCF в IIS с помощью конфигурации, и я не смог найти ни одного примера, где я могу настроить WCF на стороне сервера, используя раздел system.serviceModel в файле web.config или даже через код. Когда я использую следующий код, он всегда создает basicHttpBinding, и я не мог понять, как настроить различные привязки.

protected void Application_Start(object sender, EventArgs e)
{
    var returnFaults = new ServiceDebugBehavior
                           {
                               IncludeExceptionDetailInFaults = true,
                               HttpHelpPageEnabled = true
                           };

    var metadata = new ServiceMetadataBehavior {HttpGetEnabled = true};

    container = new WindsorContainer()
        .AddFacility<WcfFacility>()
        .Register(
            Component.For<IServiceBehavior>().Instance(returnFaults),
            Component.For<IServiceBehavior>().Instance(metadata),
            Component.For<IMyService>()
                     .Named("MyService")
                     .ImplementedBy<MyService>()
                     .LifeStyle.Transient
            );
}

А вот и MyService.svc

<%@ ServiceHost Language="C#" Debug="true" Service="MyService" 
                Factory="Castle.Facilities.WcfIntegration.DefaultServiceHostFactory, Castle.Facilities.WcfIntegration" %>

1 Ответ

3 голосов
/ 02 июня 2010

Я недавно написал в блоге о Виндзорском Центре WCF . Обязательно прочитайте также комментарии, так как они включают обсуждение с участием одного из активных приверженцев Виндзора; они должны дать вам довольно хорошее представление о будущем направлении.

...