Итак, у меня есть ситуация, которую я пытаюсь сопоставить с NHibernate.Допустим, у нас есть следующая схема:
Question
- QuestionID
- QuestionText
- SiteID
Tag
- TagID
- TagName
- SiteID
QuestionTags
- QuestionID
- TagID
Для этого все будет в порядке:
<class name="Question" table="Questions">
<key column="QuestionID" />
<property name="QuestionText" not-null="true" />
<property name="SiteID" not-null="true" />
<set name="Tags" table="QuestionTags">
<key column="QuestionID" />
<many-to-many class="Tag" column="TagID" />
</set>
</class>
<class name="Tag" table="Tags">
<key column="TagID" />
<property name="TagName" not-null="true" />
<property name="SiteID" not-null="true" />
</class>
Однако я хочу добавить столбец SiteID в QuestionTags и добавить SiteID для каждого изего внешние ключи ...
(QuestionTags.QuestionID, QuestionTags.SiteID) -> (Questions.QuestionID, Questions.SiteID)
(QuestionTags.TagID, QuestionTags.SiteID) -> (Tags.TagID, Tags.SiteID)
... так что Вопросы и теги с разными идентификаторами сайта не могут быть связаны.Как я могу отобразить эту ситуацию?