こんにちは、私はEFの新機能です。私はプロジェクトを作成し、事前に構築されたSQLデータベースからモデルを生成するために使用したedmxダイアグラムを追加しました。そのデイムダイアグラムは私のための文脈である各モデルのためのコードを生成しました。これまでのところ、これは私がデータベースからsomeCaseを削除しますEntity FrameworkのDeleteObjectをオーバーライドする方法
private Buzz.BuzzEntities db = new BuzzEntities();
db.Cases.DeleteObject(someCase);
のようなものを行うことができますOK
public partial class BuzzEntities : ObjectContext
{
public ObjectSet<Case> Cases
{
get
{
if ((_Cases == null))
{
_Cases = base.CreateObjectSet<Case>("Cases");
}
return _Cases;
}
}
:コンテキストは次のように見えます。しかし、私は何をしたいのですか?オブジェクトを削除する代わりに、削除されたオブジェクトのプロパティをマークするように、deleteメソッドをオーバーライドします。すなわちsomeCase.Delete = true;システムの次の部分は、システムがdeleted = trueのケースを読み込まないようにすることです。基本的には、システムから隠されたレコードだけが削除されることを望みません。
これを達成する最も良い方法は何ですか?私は手動でフィールドを変更し、削除オブジェクトを呼び出す代わりにレコードを保存することができますが、UIのレコードを設定または非表示にすることを心配したくありません。