私は2つのクラスを持っています:
public class Entry{
...
public virtual IsDeleted {get;set;}
public virtual int MyClsId {get;set;}
public virtual MyClass MyCls {get;set;}
}
public class MyClass{
...
public virtual ICollection<Entry> Entries {get;set;}
}
MyClass.Entries からアイテムを削除すると、実際には削除したり、現実を殺したりしたくありません。Entry.IsDeleted を true に設定したいだけで、Entry に myClass の Id を保持させたいと思っています。
myClassObj.Entries.Remove(myEntry); // after this line myEntry.MyCls.Id
// should stay intact. myEntry.IsDeleted
// should be set to true;
どうやってやるの?インターセプターを試してみましたが、機能させることができませんでした。
編集
マッピング:
私が使用するフィールドの別のフォームマッピング:
MyClassMap : ...
{
HasMany(x => Entries).KeyColumn("MyClsId");
}