2011-01-05 26 views
0

こんにちは私はイベントテーブルとInstallmentPlansテーブルを持っています。関係は0..1です:イベントは、0または1割当計画を持つことができます。既存のInstallmentPlanをイベント用に削除したい場合、どうすればいいですか? nullに設定すると動作しないようです:エンティティフレームワーク4の0..1エンティティを削除/削除する方法

_event.InstallmentPlan = null;

+0

アソシエーションを削除するか、データベースから 'InstallmentPlan'を削除しますか? –

+0

installmentplan – Riz

答えて

2

あなたは、データベースからエンティティを削除するには、オブジェクトコンテキストを使用します。

context.DeleteObject(_event.InstallmentPlan); 
context.SaveChanges(); 
+0

ええ、それはオプションですが、私はそのnullステートメントにブレークポイントを設定すると、それは動作しないので、それは奇妙です。だから私はnullに設定した場合、自動的にそのレコードを削除する必要があると思った。 – Riz

0

あなたはあまりにもキーによって関連付けを削除することができるはずです。

_event.InstallmentPlanKey = NULL;

これでオブジェクトは削除されません。そのためには、@Marekが説明しているようにエンティティも削除する必要があります。

+0

ブレークポイントを設定したときになぜそれがうまくいったのか不思議です。実際にはnullに設定し、コミット時にデータベースからレコードを削除します。しかし、私がブレークポイントを削除した場合、それはしませんでした。あなたがそれを乗り越えない限り、あなたはそれをヌルに設定することを妨げる何らかの出来事を起こすようです。奇妙な。 – Riz

+0

奇妙なのは、ブレークポイントがあってもなくても、それは私のために働くからです。私はなぜあまりにも確信していない。 –

関連する問題