В этой ситуации требуется набор с отображением «один ко многим» от test_PetType
до test_Pet
. Вам не нужны поля идентификаторов в вашем классе, если вы особенно не хотите манипулировать ими вручную (NHibernate должен обработать это для вас). Есть отличное сообщение от Ayende (один из авторов NHibernate) здесь .
Я думаю, что основной смысл вашего НВМ (адаптированный из поста Айенде) должен быть примерно таким:
<set name="Pets" table="test_PetTypes">
<key column="PetId"/>
<one-to-many class="Pet"/>
</set>
У меня нет возможности проверить это в данный момент, поэтому я не могу проверить сценарий. Вы можете обойтись без тега <set />
и вместо этого добавить отображение на более высоком уровне, например.