中央にブリッジテーブルがある1対多のマッピングを作成するにはどうすればよいですか?
基本的に、Items、Tags、TagsToItemsの3つのテーブルがあります。
各アイテムは、TagsToItemsテーブルで定義されているように多くのタグを持つことができます。Fluent NHibernateを使用してこのマッピングを正しく設定するにはどうすればよいですか?
私は遊んでHasMany
いますが、これがブリッジテーブルでどのように機能するかを完全には理解していません。
HasMany(x => x.Tags).Table("TagsToItems").KeyColumn("ItemId");
この問題を解決するための私の最近の試みは次のようになります。
HasManyToMany(x => x.Tags)
.AsBag()
.Table("TagsToItems")
.ParentKeyColumn("ItemId")
.ChildKeyColumn("TagId")
.Cascade.All()
.Inverse();
ただし、これはエラーをスローしています。
Initializing [Namespace.Item#11]-ロールのコレクションを遅延初期化できませんでした:Namespace.DataAccess.NHibernate.Entities.Item.Tags、セッションまたはセッションが閉じられていません