gpt4 book ai didi

entity-framework - Entity Framework - 乐观并发问题

转载 作者:行者123 更新时间:2023-12-04 23:32:38 33 4
gpt4 key购买 nike

我有一个每 10 秒运行一次的 Windows 服务......每次运行时,它都会获取一些测试数据,对其进行修改并使用 EntityFramework 将其保存到数据库中。但是,在每一秒运行时,当我尝试坚持更改时,我都会收到以下乐观并发异常:-

Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries



我知道一个事实,除了我的服务每 10 秒更新一次记录之外,没有其他内容写入该数据库。什么可能导致这里的并发异常?

我认为对象图中某处的相关实体在第二次保存操作之前被修改。
我所做的只是实例化一个新的对象上下文,并对我使用相同上下文检索到的一些记录调用保存操作。
以下代码有效---
var ctx = new blahEntities();
var profile = ctx.ProfileSet.Where(pr=>pr.FirstName.Contains("a")).FirstOrDefault();
profile.Address = "modified";
ctx.SaveChanges();
ctx.Refresh(RefreshMode.StoreWins,profile);

最佳答案

“意外的行数 (0)”表示您很可能没有在实体模型中正确映射或定义 ID 字段,或者您正在修改分离的实体并尝试保存它但它没有关键信息。

运行 SQL Server 探查器或 Entity Framework 探查器,看看后台发生了什么。

关于entity-framework - Entity Framework - 乐观并发问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2901033/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com