【发布时间】:2018-10-02 21:25:10
【问题描述】:
当我更新这个实体时,我得到了这个错误:
我的数据库类与我在视图模型中的类不同
但我转换它。
请帮助我并将正确的代码发送给我。
谢谢
我的错误:
附加类型为“DomainModel.Models.Tbl_Images”的实体失败,因为同一类型的另一个实体已经具有相同的主键值。如果图中的任何实体具有冲突的键值,则在使用“附加”方法或将实体的状态设置为“未更改”或“已修改”时,可能会发生这种情况。这可能是因为某些实体是新实体,尚未收到数据库生成的键值。在这种情况下,使用“添加”方法或“添加”实体状态来跟踪图形,然后将非新实体的状态设置为“未更改”或“已修改”
我的代码:
public bool Update(ImagesEditVM model)
{
bool result = false;
try
{
DomainModel.Models.Tbl_Images img = new Tbl_Images
{
Id = model.Id,
Code = model.Code,
Image = model.Image,
Language = model.Language,
Title = model.Title
};
db.Tbl_Images.Attach(img);
db.Entry<DomainModel.Models.Tbl_Images>(img).State = EntityState.Modified;
db.SaveChanges();
result = true;
return result;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
【问题讨论】:
标签: database entity-framework entity-framework-6 entity updates