У меня есть простой случай с двумя сущностями Machine
и Product
, где Machine
может иметь ноль или один Product
. Обратная ассоциация (которая могла бы быть какой-то коллекцией) в коде не нужна.
Проблема заключается в устаревшей модели базы данных, и я не могу изменить структуру таблицы Machine, поэтому я создал дополнительную таблицу MachineProduct с внешними ключами для обеих таблиц. В основном то, что вы бы сделали для отношения «многие ко многим», но на практике MachineId в этой таблице будет уникальным.
Теперь мне нужно отобразить это в NHibernate. Что я могу сделать, так это сопоставить его как коллекцию «многие ко многим» и убедиться, что в коллекции Machine.Products не более одного элемента, но я чувствую, что должен быть более точный способ справиться с этим. Я предполагаю, что в этом вся суть отображения ORM.
Я использую отображение NHibernate по коду, но пример сопоставления XML также подойдет.