Я создаю интерфейс для контроллера, который обрабатывает различные методы отправки форм, которые все используют определенные ViewModel в качестве параметров. Моя цель - использовать Dependency Injection (DI) для передачи интерфейса в другой контроллер, который должен выполнять один из методов интерфейса.
Интерфейс и контроллер работали нормально, когда Интерфейс был помещен в веб-проект, однако, как только я переместил Интерфейс в проект Интерфейсы, ссылкичтобы сломались ViewModels и я не могу понять, как их решить.
Я смог использовать это для прямого вызова метода, не используя маршрут DI, однако остальная часть нашего сайта использует DI, и я не хотел нарушать шаблон:
var controller = DependencyResolver.Current.GetService<FormController>();
controller.SendForm(model);
Я пробовал:
Добавление веб-проекта в качестве ссылки на сборку для проекта интерфейсов, однако это приведет к созданию циклической ссылки (как VS любезно сообщите мне).
Intellisense, без рекомендаций.
Добавление директивы Using, но веб-проект не является доступным пространством имен для выбора из
Это сайт ASP.NET MVC на 4.6.1. Контроллер живет в папке Controllers под веб-проектом. Новый интерфейс находится в отдельном проекте Interfaces в том же решении.