У меня есть существующее отношение «многие ко многим» в SQL, которое отображается на мои бизнес-объекты с помощью NHibernate.
Я хочу добавить свойство для дочернего элемента (Категория ниже), которое применимо только котношения между родителем и ребенком.В SQL я бы добавил поле в таблицу соединения.
Как использовать NHibernate, чтобы извлечь это значение из таблицы соединения и связать его со свойством потомка?
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
namespace="MyProject.Core.Entities"
assembly="MyProject.Core">
<class name="Product" table="Products" lazy="false">
<id name="ProductId" access="field">
<generator class="native" />
</id>
<property name="ProductName" access="field" />
<idbag name="Categories" table="ProductCategory">
<collection-id column="ProductCategoryId" type="int">
<generator class="native" />
</collection-id>
<key column="ProductId" />
<many-to-many column="CategoryId" class="Category" />
</idbag>
</class>
</hibernate-mapping>
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
namespace="MyProject.Core.Entities"
assembly="MyProject.Core">
<class name="Category" table="Categories" lazy="false">
<id name="CategoryId" access="field">
<generator class="native" />
</id>
<property name="CategoryName" access="field" />
</class>
</hibernate-mapping>