2010-02-22 59 views

回答

1

您無法修改列表以更新數據庫。您必須修改數據庫實體集合。例如:db.Table.Remove(instance)

編輯:我相信上面的語法只是EF4。對於原始EF,您需要使用DeleteOnSubmit,這是您實體容器上的一種方法。

+0

我想anthares告訴同樣的事情! – 2010-02-22 16:00:29

0

您是否將您的更改與db.SubmitChanges();方法一起應用於您的數據上下文?從MSDN 例子:

var deleteOrderDetails = 
    from details in db.OrderDetails 
    where details.OrderID == 11000 
    select details; 

foreach (var detail in deleteOrderDetails) 
{ 
    db.OrderDetails.DeleteOnSubmit(detail); 
} 

try 
{ 
    db.SubmitChanges(); 
} 
catch (Exception e) 
{ 
    Console.WriteLine(e); 
    // Provide for exceptions. 
} 

這裏是源:http://msdn.microsoft.com/en-us/library/bb386925.aspx

我不知道,你可以填充從你的清單數據庫中的變化,如果這是你想要達到的目標。

+0

所以我應該保留一個列表與刪除Id和DeleteInSubmit(Id)。這是有道理的...我會嘗試。 – 2010-02-22 15:20:54

+0

不,你應該提供實體對象DeleteOnSubmit把他們置於一個掛起的刪除狀態 – anthares 2010-02-22 15:23:09

相關問題