Я нахожусь в процессе запуска нового проекта и создания бизнес-объектов, доступа к данным и т. Д. Я просто использую простые старые объекты clr, а не какие-либо формы.Я создал две библиотеки классов: 1) Бизнес-объекты - содержит все мои бизнес-объекты, все эти объекты имеют небольшой вес и имеют только свойства и бизнес-правила.2) Репозиторий - это для всех моих данных доступа.
Большинство моих объектов будет иметь дочерний список, и мой вопрос, каков наилучший способ ленивой загрузки этих значений, поскольку я не хочу принестивозвращать ненужную информацию, если мне это не нужно.
Я думал о том, чтобы использовать свойство get для дочернего свойства, чтобы проверить, имеет ли оно значение null, и вызывает ли оно мой репозиторий для получения дочерней информации.Это имеет две проблемы из того, что я вижу: 1) объект «знает», как получить себя, я бы не хотел, чтобы в объекте содержалась логика доступа к данным.2) Для этого требовалось, чтобы оба класса ссылались друг на друга, что в visual studio приводит к циклической ошибке зависимости.
Есть ли у кого-нибудь какие-либо предложения о том, как преодолеть эту проблему, или какие-либо рекомендации по компоновке моих проектов и где ее можно улучшить?
Спасибо