Доступ к информации о сборке из Tag Helper, который находится в отдельном проекте - PullRequest
0 голосов
/ 20 марта 2020

У меня есть проект. NET Core 2.1, где у меня есть проект MVC, который содержит все контроллеры и еще много чего. Затем у меня есть отдельный проект для пользовательских помощников тегов. Мне нужно получить доступ к сборке для проекта MVC в моем помощнике по тегам, чтобы получить информацию о контроллерах, используя отражение; однако проблема в том, что я не могу добавить ссылку на проект MVC в свой проект помощника по тегам, потому что это создаст циклическую зависимость. Моей первой мыслью было попытаться использовать класс ViewContext для получения информации о сборке проекта MVC, но мне не повезло. Есть ли способ передать информацию о сборке из проекта MVC в помощник по тегам или мне нужно переместить помощников по тегам в проект MVC?

Надеюсь, этот вопрос имеет смысл. Любая помощь будет оценена.

1 Ответ

0 голосов
/ 20 марта 2020

Я действительно смог обойти это, используя магию c внедрения зависимости. Я создал класс, который принимает сборку в качестве параметра конструктора. Затем, так как внедрение зависимостей начинается в классе запуска проекта MVC, я создал экземпляр синглтона, используя

Assembly.GetExecutingAssembly()

, тогда я смог добавить этот класс синглтона в мой помощник по тегам.

...