MVC Asp.Net с Onion Architecture не публикует библиотечные проекты Dlls. - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть решение, которое содержит

  1. Приложение пользовательского интерфейса -> содержит пользовательский интерфейс и ссылки Core Proj
  2. Базовый проект -> ничего не содержит моделей доменов и ссылок
  3. Infastructure -> Содержит загрузчик Unity Proj и DAL Proj.Bootstrapper -> содержит конфигурацию Automapper и Unity DI.и ссылки (UI, Core и DAL)
    DAL -> содержит

Все работает, собирается и работает локально, но когда я публикую с Visual Studio, он не приносит библиотеки DLL для Bootstrapper илиDAL.Насколько я понимаю, это потому, что нет никакой ссылки между UI и DAL или UI и Bootstrapper.Это потому, что DAL ссылается на Core, а Bootstrapper ссылается на все.Как заставить Visual Studio включать их в мои опубликованные файлы?

1 Ответ

0 голосов
/ 27 ноября 2018

Обычно ваш проект пользовательского интерфейса обязательно должен содержать ссылку на проект инфраструктуры, иначе как вы сможете запустить Unity в Application_startup без запуска ошибок компилятора?

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

Важным моментом луковой архитектуры является то, что ядро ​​не зависит от зависимостей, как вы это сделали, и сохраняете сервисы (доменные сервисы и сервисы инфраструктуры одинаково).) независимы друг от друга.Все это достигается за счет разумного использования инъекций зависимостей.Луковая архитектура - это не какая-то религия, мешающая вам добавлять ссылки в точку входа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...