Отделить вызывающего абонента от класса подписчика

#asp.net-mvc-3 #events #unity-container

#asp.net-mvc-3 #Мероприятия #unity-контейнер

Вопрос:

Я пытаюсь достичь чего-то, чего я не знаю, возможно ли это.

Предыстория: я создаю новый ASP.NET Проект MVC 3, и я хочу перенести инициализацию контейнера Unity за пределы веб-проекта.

Намерение: я хочу, чтобы мой веб-проект был отделен от проекта, который содержит код инициализации контейнера Unity.

Мое решение: пусть класс A в отдельном проекте опубликует событие через объявление делегата / события и предоставит метод, который вызывает событие.

Создайте другой класс B в отдельном проекте, который подписывается на событие, публикуемое классом A.

Пусть Global.asax в моем веб-проекте инициализирует класс A и вызывает метод, который вызывает событие.

Ожидание: я хочу, чтобы метод обработчика событий в классе подписчика (класс B) выполнялся сразу после возникновения события.

Веб-проект ссылается на библиотеку, содержащую класс A (Publisher). Библиотека, содержащая класс B (подписчик), также ссылается на библиотеку, содержащую класс A.

Есть ли способ добиться этого, и если нет, какие другие предложения у вас есть для меня, чтобы избежать инициализации контейнера Unity в веб-проекте?

Ответ №1:

Поскольку я не смог этого сделать и поскольку я ни от кого больше не слышал, я отвечаю на свой собственный вопрос: то, что я пытаюсь сделать, невозможно.