Интересен Spring.NET
Как в IoC-контейнере описать тип, который должен иметь ссылку на сам контейнер?
1
Спросил
Лучший ответ:
0
Класс, который хочет знать о контексте должен реализовать интерфейс IApplicationContextAware
, добавляющий свойство ApplicationContext
. Если сам этот объект объявляется внутри контейнера, то после инициализации это свойсво будет указывать на актуальный контекст.
Есть еще аналогичный интерфейс Spring.Objects.Factory.IObjectFactoryAware, реализующий его объект будет иметь ссылку на IObjectFactory.
Новые ответы
0
Как вариант, зарегистрировать в контейнере сам контейнер и пользоваться стандартным DI-механизмом.
А как нужно описывать такой объект в контейнере?
Вот это не сработало.
В контейнере такой объект описывается как обычно. Spring.NET сам распознает, что объект хочет получить ссылку на контекст и устанавливает соответствующее поле.