我有两个表。文档表和版本表。两者都是标识,除了版本表有一个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