Я хотел бы установить свои сервисы WCF для использования Контейнера МОК. Существует статья в Wiki Autofac об интеграции WCF, но она показывает просто интеграцию с сервисом, размещенным в IIS.
Но мои сервисы размещаются в сервисе окон.
Здесь я получил совет поднять трубку открытие http://groups.google.com/group/autofac/browse_thread/thread/23eb7ff07d8bfa03
Я последовал совету, и это - то, что я получил до сих пор:
private void RunService()
{
var builder = new ContainerBuilder();
builder.Register(c => new DataAccessAdapter("1")).As();
ServiceHost serviceHost = new ServiceHost(typeof(T));
serviceHost.Opening += (sender, args) => serviceHost.Description.Behaviors.Add(
new AutofacDependencyInjectionServiceBehavior(builder.Build(), typeof(T), ??? ));
serviceHost.Open();
}
AutofacDependencyInjectionServiceBehavior имеет ctor, который берет 3 параметра. Третий имеет тип IComponentRegistration
и я понятия не имею, где я могу получить его от. Какие-либо идеи?
Заранее спасибо.
Я написал сообщение в блоге, в котором описывается, как использовать интеграцию Autofac WCF при самостоятельном размещении служб WCF.
http://alexmg.com/self-hosting-wcf-services-with-the-autofac-wcf-integration/
Этого должно быть достаточно, чтобы указать вам правильное направление. Я собираюсь обновить документацию вики Autofac, включив в нее тот же пример.