Могу ли я использовать viewmodels в моем проекте MVC (.net core 3.0) в моем проекте ApplicationLogic (стандарт net 2.1) - PullRequest
0 голосов
/ 08 ноября 2019

У меня есть приложение MVC, в котором находятся все мои модели представлений. Я добавил проект уровня бизнес-логики, который является сетевым стандартом проекта библиотеки классов 2.1, где находятся все мои интерфейсы и сервисы. Я пытаюсь использовать мои view-модели в проекте бизнес-логики, но я не могу ссылаться на них там. Я хотел знать, могу ли я ссылаться на приложение MVC в библиотеке классов, если нет, то где я могу разместить свои модели представлений, если я не хочу добавлять DTO, потому что мое приложение не очень большой проект.

1 Ответ

0 голосов
/ 08 ноября 2019

Здесь много путаницы. Во-первых, нет ничего магического в модели представления или DTO, а имена просто описывают конкретный контекст использования. В конце концов, у вас есть класс, который представляет некоторую коллекцию данных в определенном контексте: и все. Во-вторых, бизнес-логика - это , а не логика приложения. Логика приложения связана с представлением и взаимодействием с пользователем, а бизнес-логика - с необработанными данными. Эти две вещи не должны пересекаться, потому что бизнес-правила не должны определять представление, а представление не должно определять бизнес-правила.

Бизнес-уровень не должен ничего знать о ваших моделях представления на уровне приложения (приложение MVC), так каксоздаст жесткую связь (и круговую ссылку, FWIW). Логика для отображения в / из моделей представлений на прикладном уровне в сущности на бизнес-уровне является областью только прикладного уровня.

...