2011-12-22 7 views
0

私は 'users'テーブルと 'notifications'テーブルを持っています。 テーブルの定義は以下のとおりです。Linq to Entities:.Clear()はリレーション列を削除せず、リレーション列の値のみを返します

users  notifications 
-------  ------------- 
ID (PK)  ID (PK) 
Name   Name 
      users_ID (FK/Relation) 

私が行うとき:該当するユーザエンティティのための

MyUserEntity.notifications.clear(); 
MyContext.SaveChanges(); 

users_ID列の値(複数可)をNULLに設定しますが、私は、行を削除したいされています。

私には何が欠けていますか? ありがとう!

答えて

1

は私がコレクションが変更された `取得

foreach(var notification in MyUserEntity.notifications.ToList()) 
{ 
    MyContext.DeleteObject(notification); 
} 
MyContext.SaveChanges(); 
+0

をお試しください。 'foreach'行で列挙操作が実行されないことがあります。 – user706058

+0

'(MyUserEntity.notifications.ToList()内のvar通知を試してください。 ' –

+0

ループに' .ToList() 'を使っていました。ありがとう! – user706058

関連する問題