Я хотел бы поблагодарить @Stefan Steinegger и @David, которые помогли мне вчера с картированием «многие ко многим».
У меня есть 3 таблицы: «Новости», «Теги» и «Новости_ Теги» со связями «Многие ко многим», а «Новости_ Теги» - это таблица ссылок.
Если я удаляю одну из записей новостей, следующие сопоставления удаляют все мои записи новостей, имеющие одинаковые теги. Одна вещь, которую я должен заметить, я разрешил только уникальный тег, сохраненный в теге " Таблица.
Это отображение имеет смысл для меня, оно удалит тег и связанные с ним записи новостей, но как я могу реализовать систему тегов с помощью NHibernate?
Кто-нибудь может дать мне какое-нибудь предложение? Большое спасибо.
Daoming.
Отображение новостей:
<class name="New" table="News" lazy="false">
<id name="NewID">
<generator class="identity" />
</id>
<property name="Title" type="String"></property>
<property name="Description" type="String"></property>
<set name="TagsList" table="New_Tags" lazy="false" inverse="true" cascade="all">
<key column="NewID" />
<many-to-many class="Tag" column="TagID" />
</set>
</class>
Отображение тегов:
<class name="Tag" table="Tags" lazy="false">
<id name="TagID">
<generator class="identity" />
</id>
<property name="TagName" type="String"></property>
<property name="DateCreated" type="DateTime"></property>
<!--inverse="true" has been defined in the "News mapping"-->
<set name="NewsList" table="New_Tags" lazy="false" cascade="all">
<key column="TagID" />
<many-to-many class="New" column="NewID" />
</set>
</class>