Это немного концептуальных вопросов, но я думаю, что это правильное место, чтобы задать его.
Я работаю с NHibernate в течение некоторого времени, но мне трудно использовать коллекции в объектах POCO.
1. Я думаю, что концепция прокси хороша, но когда вы хотите использовать ее в многоуровневой архитектуре, это становится проблемой.
2. Я хочу добавить бизнес-логику на любой тип запроса от БД. например, ограничения авторизации и т.д ..
3. Я хотел бы добавить некоторую бизнес-логику, когда добавляю или удаляю сущность из коллекции.
и есть еще несколько причин, по которым у меня возникают проблемы с коллекциями и прокси.
Я подумал, что, возможно, есть способ использовать объект POCO без каких-либо коллекций и позволить сервисному уровню обрабатывать подзапросы, ассоциации и т. Д ...
Я понимаю, что коллекция необходима для работы Nhibernate, но как только я выйду из сервисного уровня, я хочу выровнять объекты и вынуть все коллекции. таким образом я могу реализовать свои собственные операции и бизнес-логику.
есть ли стандартный способ сделать это? мне нужно прикрепить и отсоединить объекты? как мне создать объект DTO из объекта POCO и скопировать поля и т.д ...
У кого-нибудь есть для этого лучшие практики, и он сделал то же самое?
Я мог бы просто создать объекты POCO без каких-либо отношений и только дать nhibernat знать об этих отношениях через отображение. затем, используя сеанс, я могу контролировать ассоциации между объектами.
Спасибо,
Ноам