1

Dictionary を持つ次のクラスがあります。

public class Entity1 
{
    public Dictionary<Entity2,Entity3> Targets { get; set; }
}

現在、このコードによってマッピングされています:

    Map(x => x.Targets,
        m => m.Key(k => k.Column("Entity1ID")),
        km => km.ManyToMany(mtm => mtm.Column("Entity2ID")),
        vm => vm.ManyToMany(mtm => mtm.Column("Entity3ID")));

KeyMapping に別のカスケード オプションを設定し、ValueMapping に別のオプションを設定する方法を探しています。しかし、メインの「コレクションマッピング」でのみカスケードを見つけることができます

キーに Cascade.None が必要です。これは、アプリケーションの別の部分がそのエンティティを管理し、Value に Cascade.AllDeleteOrphan が含まれているためです。

MbC でそれを行うにはどうすればよいですか?

さらに、「CollectionMapping」のカスケードを設定すると、どのエンティティに反映されますか?

nuget で最新の Nhibernate を使用しています。

4

1 に答える 1