3
説明した方法hereを使用して、親レコードとすべての関連する子レコードを削除しようとしています。しかし、何が起こるかは、親が期待通りに削除されますが、子レコードキーフィールドは削除される代わりにNULLに更新されます。EF4 CTP5コードのカスケード削除子レコードの更新を実行します
また、子テーブルの外部キーの削除ルールをカスケードに設定し、SQL Serverの管理で親テーブルから削除すると、カスケード削除が正常に実行されます。
私はこのwalkthoughに従い、削除を実行するようにコードを修正することから始めました。
これはコードです:
using (var db = new ProductContext())
{
var food = db.Categories.Find("FOOD");
((IObjectContextAdapter)db).ObjectContext.LoadProperty(food, f => f.Products);
db.Categories.Remove(food);
int recordsAffected = db.SaveChanges();
は、私が欠けているものはありますか?または、孤児の子供が意図した結果を記録していますか?
ありがとう:子エンティティを使用すると、私は次のコードで行ったように
Required
としてCategoryId
をマークする必要があり、親を削除した結果として削除されますされるように必要なこの関連付けを行うには! – markpsmith