0

我有以下代碼:爲什麼這段代碼不能從表中刪除行?

Using dbContext As pbu_housingEntities = New pbu_housingEntities 
     ' First, delete all current records associated with the specified semester. 
     Dim delete_old = (From p In dbContext.Residents _ 
          Where p.semester = txtDestSemester.Text _ 
          Where p.year = txtDestYear.Text _ 
          Select p) 
     dbContext.Residents.DeleteObject(delete_old) 
     dbContext.SaveChanges() 
End Using 

但它不工作。它拋出一個無法投射「System.Data.Objects.ObjectQuery」類型錯誤的對象。有什麼想法嗎?

我想要做的就是抓取具有指定條件的行的列表,然後刪除所有返回的行。

回答

4

delete_old可能超過1項。

添加一個ToList()並遍歷每個條目並調用每個枚舉項的DeleteObject方法。

+0

只是添加到這個答案:'delete_old'將永遠是一個IEnumerable,即使它只發現一條記錄。 – IronMan84

+0

謝謝!這非常有幫助! – davemackey

相關問題