Я использую Microsoft.Practices.ObjectBuilder
в веб-проекте для обработки инъекции зависимостей (например, между представлением и презентатором).Вложение зависимостей ObjectBuilder и веб-службы ASP.NET
Недавно я добавил веб-службу ASP.NET (.asmx) для обработки вызовов ajax. Я также хотел бы использовать инъекцию зависимостей с ObjectBuilder
, но я не могу заставить его работать.
Я попытался просто добавить что-то вроде этого:
[CreateNew]
public MyClass MyClass
{
set
{
_myClass = value;
}
}
Но это не работает. Инициатор свойств MyClass
никогда не вызывается. Возможно ли это сделать?
Чтобы ответить на вопрос, да, возможно, это возможно. – Dennisch
ObjectBuilder? Шутки в сторону? Почему вы используете этот неясный мир технологий, который используется для создания контейнеров с DI? Почему бы вам просто не использовать Unity (который построен поверх ObjectBuilder)? – Steven
Вам придется реализовать свой собственный HandlerFactory, но даже несмотря на то, что ASP.NET контролирует создание вашего обработчика, ему нужен конструктор по умолчанию. То, что вы можете попробовать, - это явная инъекция свойств (свойство зависимостей, помеченное атрибутом) и пользовательский HandlerFactory, который создает fsctory. Но не знаю, как это сделать с ObjectBuilder. – Steven