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 を使用しています。