Я работаю над устаревшей базой данных, которую нельзя изменить.
У меня есть таблица (Table1) с отношением многие-к-одному с другой таблицей (Table2), которая имеет составной ключ.
Если бы все было прямо вперед, отображение для table1 могло бы выглядеть так:
<class name="Table1" table="Table1">
<id name="Id" column="I_ID"></id>
<many-to-one name="Table2" class="Table2">
<column name="I_TABLE2_ID1"></column>
<column name="I_TABLE2_ID2"></column>
</many-to-one>
</class>
Моя проблема в том, что у меня нет столбца I_TABLE2_ID2 в Таблице 1.
Поэтому я хотел бы использовать вместо этого значение по умолчанию. Есть ли способ сделать это в файле сопоставления?
EDIT1:
Кажется, работает следующее отображение:
<class name="Table1" table="Table1">
<id name="Id" column="I_ID"></id>
<property name="Table2Id1" column="I_TABLE2_ID1"></property>
<bag name="Table2" where="I_ID2 = 12">
<key column="I_ID1" property-ref="Table2Id1"></key>
<one-to-many class="Table2"/>
</bag>
</class>
Также мне пришлось изменить тип свойства Table2 на IList, но, думаю, я мог бы использовать личное свойство, чтобы объект выглядел лучше ...