- Наследование.
- property – подробности про маппинг свойств.
- component – если есть желание иметь вложенные классы в сущностях. Например чтобы у пользователя был адрес в виде объекта и обращаться к нему можно было как user.Address.Street.
- one-to-one – связь один к одному.
- any – для связи таблиц, которые не связаны явно. (не знаю как это описать более точно, надо читать :) ).
- many-to-any – расширение any маппинга.
- join – аналог one-to-one, но позволяет замапить несколько таблиц в один объект.
- dynamic-component – позволяет вынести набор свойств объекта в Dictionary. Возможно редко используемые свойства есть смысл туда вынести, чтобы не засорять сущность.
- set – один из наиболее часто используемых элементов для маппинга коллекций.
- Named queries <query/> and <sql-query/> – если нужно встраивать свой sql код в маппинги.
- map – никогда не использовал сам. Но это еще один вариант организации связей между сущностями. Когда посмотрю возможно опишу более подробно.
- list – главное отличие list от set – list может содержать повторяющиеся записи. Это значит что если вы попытаетесь в set добавить элемент, который уже содержится в коллекции (проверяется на равенство при помощи метода Equals()), то элемент не будет добавлен. Если же последнее действие проделать с list, то элемент может быть добавлен.
Далее рассмотрим наиболее часто встречающиеся структуры:
Каталог буду пополнять по мере поступления :).
No comments:
Post a Comment