NHibernate elt поле


Кто-нибудь знает, почему NHibernate генерирует поле с именем 'elt' типа int для отображения "многие ко многим"? Интересно, зачем мне это нужно? Спасибо

3 7

3 ответа:

Поле "elt" является внешним ключом к элементу в отображении "многие ко многим". В таблице join вы увидите два столбца внешнего ключа: id (для родительского элемента) и elt (для элемента). Вы можете использовать разные имена, если хотите; это значения по умолчанию.

Спасибо, да вы правы с немного больше играть я нашел, что если я Не называйте явно столбец по умолчанию elt.

<bag name="equipment" table="tb_room_equipment" lazy="false">
  <key column="roomID"/>
  <many-to-many class="Equipment" column="equipmentID"/>
</bag>

Как и здесь, я теперь назвал колонку equipmentID; если я этого не сделаю, она будет называться elt.

Только недавно выяснилось, что полеelt создается, если вы использовали ключевое слово , напримерUser илиRole при использовании отображения кодом. Это просто наблюдение, я не пробовал использовать ` (backtick), чтобы заставить кавычки