做一些错误与我的实体Update.Code
本文关键字:实体 Update Code 我的 错误 | 更新日期: 2023-09-27 18:07:53
我有一个GridView与一个选择按钮,触发这段代码。它的目的是提供最后一分钟撤销授权的方法。因此,它试图做的是在数据库中打开一个表,更新三个列,将两个设置为空(没有绝对必要的可能是空白或单独留下),但关键的改变是"批准",需要更改为False。我的所有值分配和我的"SaveChanges()"的红线。我对c#编码很陌生,所以我可以在这里使用一些方向,但我在这里所做的是遵循我发现的例子,我认为它应该是有效的……但是…
想法吗?
protected void PrePushUpdatesGrd_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewRow row = PrePushUpdatesGrd.SelectedRow;
int trackingID = int.Parse(row.Cells[1].Text);
using (CInTracDBEntities1 Context = new CInTracDBEntities1())
{
var UpdateSet = Context.Updates.Where(a => a.CAssetID == trackingID).Select(x => new { x.CAssetID, x.SubmitBy, x.SubmitDT, x.ApproveBy, x.Approved, x.ApprovedDT }).FirstOrDefault();
UpdateSet.ApproveBy = null;
UpdateSet.ApprovedDT = null;
UpdateSet.Approved = "False";
trackingID.SaveChanges();
}
PrePushUpdatesGrd.DataBind();
}
试试这个
protected void PrePushUpdatesGrd_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewRow row = PrePushUpdatesGrd.SelectedRow;
int trackingID = int.Parse(row.Cells[1].Text);
using (CInTracDBEntities1 Context = new CInTracDBEntities1())
{
var UpdateSet = Context.Updates.FirstOrDefault(a => a.CAssetID == trackingID);
UpdateSet.ApproveBy = null;
UpdateSet.ApprovedDT = null;
UpdateSet.Approved = "False";
Context.Entry(UpdateSet).State= EntityState.Modified; //correct
Context.SaveChanges();
}
PrePushUpdatesGrd.DataBind();
}