我有兩個表。文檔表和版本表。兩者都是標識,除了版本表有一個ID字段和一個documentID字段。文檔表有一個documentId字段。Linq更新數據庫,主鍵
我可以正確地找到文檔,但我找不到版本表信息,因爲我在其中填充的ID試圖在id字段而不是documentId字段上找到它。
public ActionResult ApproveDocument(int id = 0)
{
IPACS_Document ipacs_document = db.IPACS_Document.Find(id);
IPACS_Version ipacs_version = db.IPACS_Version.Find(id);
ipacs_version.dateApproved = System.DateTime.Now;
ipacs_version.approvedBy = User.Identity.Name.Split("\\".ToCharArray())[1];
ipacs_document.dateApproved = System.DateTime.Now;
ipacs_document.approvedBy = User.Identity.Name.Split("\\".ToCharArray())[1];
ipacs_document.revision = ipacs_version.revision;
db.SaveChanges();
return RedirectToAction("Approve");
}
所以ipacs_document
正確發現,因爲ID在11件作品通過。但ipacs_version
找不到任何內容,因爲它試圖找到id 11
而不是documentId 11
。
我不熟悉.Find(id)方法......你是寫它還是自動生成的? – Colin 2013-04-11 17:51:50
它是自動生成的。 – 2013-04-11 17:54:07