Контейнеры IoC, WCF и ServiceHostFactories - PullRequest
2 голосов
/ 02 октября 2011

Я недавно читал о IoC и думаю, что он определенно пригодится в веб-сервисе WCF , который я разрабатываю. Однако, похоже, что Ninject, StructureMap и Spring.Net (я только проверял эти три) требуют добавления пользовательского атрибута Factory в файл *.svc:

<%@ ServiceHost Language="C#" Debug="true" Service="SomeService" CodeBehind="SomeService.svc.cs" Factory="Ninject.Extensions.Wcf.NinjectServiceHostFactory" %>

Проблема заключается в том, что из-за архитектуры системы, в которой будет развернут сервис, я уже использую собственную фабрику, которая является обязательным требованием для этого проекта. Можно ли как-то преодолеть эту ситуацию?

1 Ответ

2 голосов
/ 02 октября 2011

Autofac также использует собственную фабрику, и я подозреваю, что все они будут использовать это, поскольку это дает контейнеру IoC возможность участвовать в процессе создания службы.Большинство (все?) Из них с открытым исходным кодом, поэтому вы можете просмотреть их исходный код и посмотреть, можно ли обернуть в него пользовательскую фабрику IoC или изменить исходный код для их интеграции.

...