способа хранения данных:
1. Модели лежали в Domain и в слое Infrastructure их настраивали с помощью IEntityTypeConfiguration
2. Модели дублировали в слое Infrastructure но там уже ставили атрибуты и в общем этот дубль был анемичным и всегда при переходе в слой Infrastructure модель маппилась с доменной а анемичную.
Какой подход предпочтительнее?
первый выглядит проще
Я через первый вариант делал
в первом стягивать данные неудобно меж двух агрегатов, во втором между анемичными агрегатами ссылка на уровне базы. Простой джойн и всве
2 путь более каноничный, потому что ты в домене можешь полностью перестать думать о том, как твой агрегат будет сохранятся, и пережует ли твоя ормка то, что ты там доменно накуралесил Но если агрегаты не сложные, а ормка крутая, можно идти первым путем.
модели бывают двух видов вьюмодели и доменнные. из названия понятно к какому слою они относятся
я так понимаю под ViewModel вы подразумеваете DTO для отправки в качестве ответа на Query запрос. В таком случае ответ не совсем в контексте моего вопроса
доменный слой содержит доменные модели слой инфраструктуры ссылается на доменный слой и просто тупо настраивает все моменты "сохраняемости" этих доменных моделей (через fluent ef core, чтобы доменный слой не нагружать всякими ненужными атрибутами)
Обсуждают сегодня