//SelectUtilitiesCheckbox is bound to a complete list of the Utilitie_companies table
foreach (ListItem x in SelectUtilitiesCheckBox.Items)
{
Select_Utility SU = rows.Where(r => r.Utility_Id == Convert.ToInt32(x.Value)).FirstOrDefault();
bool initialValue = SU != null;
if (x.Selected == true && initialValue == false)
{
// New qualification added so save it
Select_Utility NewSelectUtility = new Select_Utility();
NewSelectUtility.WorkId = tempWorkSiteId;
NewSelectUtility.Utility_Id = System.Convert.ToInt32(x.Value);
context.Select_Utilities.InsertOnSubmit(NewSelectUtility);
}
else if (x.Selected == false && initialValue == true)
{
// Removed old qualification so remove it in the database
context.Select_Utilities.DeleteOnSubmit(SU);
}
}
context.SubmitChanges();
私のQは-LINQを使用しています-送信時に挿入は正常に機能しますが、deleteOnSubmitを使用しようとすると
エラー:ChangeConflictEceptionはユーザーコードによって処理されませんでした-行が見つからないか、変更されていません。
context.submitに到達したら、context.Select_Utilities.DeleteOnSubmit(SU);でbreakpoit'Su'を使用します。削除する正しいレコードが含まれています
理由について何かアイデアはありますか?