たくさんの場所を検索しましたが、探している答えが見つかりません。
NHibernate3.2を使用しています-コードによるマッピング
私は次のマッピングファイルを持っています:
public class ParentMapping: EntityMapping<Parent>
{
public ParentMapping()
{
Set(x => x.Children, map =>
{
map.Cascade(Cascade.All);
map.Inverse(true);
}, r => r.OneToMany());
}
}
public class ChildMapping: JoinedSubclassMapping<Child> // This is a subclass of something else.
{
public RequiredSkillMapping()
{
ManyToOne(x => x.Parent, map => { map.NotNullable(true); });
}
}
カスケード保存は正常に機能します。
session.Save(parent) will save the children and associate them correctly.
電話をかけようとすると:
var parent = session.Get<Parent>(1);
parent.Children.Clear();
session.Save(parent); or session.SaveOrUpdate(parent) or session.Update(parent)
エンティティは親に関連付けられたままです。
私はそれを呼び出すことによって機能させました:
foreach(var child in parent.Children)
{
session.Delete(child);
}
parent.Children.Clear();
親を救う方法があるのではないかと期待していましたか?
乾杯、
ジェームズ