【发布时间】:2017-08-10 22:36:26
【问题描述】:
我有桌子
eventid int -- not PK key but with autoincrement
jobid -- PK autoincrement disabled
userid int -- PK autoincrement disabled
要更新 jobID,我执行以下操作:
var itemforupdate = context.table.where(n=>n.eventid == someparameter).FirstorDefault()
我从数据库中正确获取了项目,但是在分配时:
itemforupdate.jobID = 5;
context.SaveChanges();
context.SaveChanges() 之后出现错误:
属性“jobID”是对象的关键信息的一部分,并且 无法修改
如何从实体框架更新jobID来解决这个问题?
【问题讨论】:
-
我不是实体框架方面的专家,但您不能将对象的键设置为 eventid(因为它无论如何都是自动增量列)?
-
我只是使用唯一的 eventid 从数据库中获取项目并尝试从 EF 更新 jobid 但它给出了错误
标签: c# sql entity-framework