У меня есть две таблицы (Правило и Объект), связанные через отношение многие ко многим. Правило может быть связано с любым количеством объектов или со всеми объектами.
Я бы обычно строил эту ассоциацию с таблицей ссылок, где столбец Object_ID был бы установлен в NULL, если связанное Правило было связано со всеми Объектами. Подойдет любое значение, которое не будет ссылаться на реальный объект.
Таким образом, я мог бы написать Select, чтобы найти все Правила, связанные с объектом, подобным этому:
SELECT * FROM Rule JOIN RuleObject_Link on Rule.ID = RuleObject_Link.RuleID WHERE RuleObject_Link.ObjectID = <the object ID> or RuleObject_Link.ObjectID IS NULL
Проблема в том, что я использую NHibernate. Я не могу найти способ обозначить «все объекты» в автоматизированной структуре отношений / коллекции.
Можно ли построить подобные отношения, используя отношение "многие ко многим" в NHibernate?
Или мне придется вручную настроить таблицу ссылок и обработать соединение самостоятельно?