首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >实体类型“库”上的属性“BookId”具有一个临时值。显式设置永久值或确保数据库为

实体类型“库”上的属性“BookId”具有一个临时值。显式设置永久值或确保数据库为
EN

Stack Overflow用户
提问于 2019-02-18 17:05:25
回答 3查看 5.9K关注 0票数 3

当我在迁移中使用实体框架核心和种子数据时,我有以下错误:

实体类型“库”上的属性“BookId”具有一个临时值。显式设置永久值或确保将数据库配置为为此属性生成值。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-02-18 17:05:25

该消息意味着您已经为您的键提供了一个值,如果您与ForeignKey有依赖关系,则该值不存在。

票数 2
EN

Stack Overflow用户

发布于 2019-07-18 11:30:20

当我有唯一索引时,我得到了相同的异常,AddRange在唯一索引上失败了,然后在catch异常块中尝试删除整个插入的集合。(不是我的代码,但我必须修复它:-)

代码示例(简化):

代码语言:javascript
运行
复制
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;
}
票数 0
EN

Stack Overflow用户

发布于 2021-10-13 05:39:41

错误消息可能会误导和造成混乱,首先我认为它来自数据库设置。

当(错误地)将两个相同的对象添加到列表中、使用添加/修改的值更新上下文范围并保存回数据库时,我遇到了此错误:

例如:

代码语言:javascript
运行
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54752158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档