当我在迁移中使用实体框架核心和种子数据时,我有以下错误:
实体类型“库”上的属性“BookId”具有一个临时值。显式设置永久值或确保将数据库配置为为此属性生成值。
发布于 2019-02-18 17:05:25
该消息意味着您已经为您的键提供了一个值,如果您与ForeignKey有依赖关系,则该值不存在。
发布于 2019-07-18 11:30:20
当我有唯一索引时,我得到了相同的异常,AddRange在唯一索引上失败了,然后在catch异常块中尝试删除整个插入的集合。(不是我的代码,但我必须修复它:-)
代码示例(简化):
try {
context.AddRange(users); // List<User>, has property List<Contact>
context.SaveChanges(); // throws exception on unique index
} catch (Exception ex) {
context.RemoveRange(users); // this throws exception "The property 'UserID' on entity type 'Contact' has a temporary value"
throw;
}
发布于 2021-10-13 05:39:41
错误消息可能会误导和造成混乱,首先我认为它来自数据库设置。
当(错误地)将两个相同的对象添加到列表中、使用添加/修改的值更新上下文范围并保存回数据库时,我遇到了此错误:
例如:
list = _context.SomeList.ToList();
var obj = new Obj();
list.Add(obj);
.......
list.Add(obj); //<- second add of the same object
.......
_context.UpdateRange(list);
_context.SaveChanges(); //<- error
https://stackoverflow.com/questions/54752158
复制相似问题