中的并发策略,就需要使用我们的并发令牌(ConcurrencyCheck)
在Entity Framework Core中,并发的默认处理方式是无视并发冲突的,任何修改语句在条件符合的情况下,都可以修改成功...如果一个属性被配置为并发令牌,则EF将在保存这条记录时,会检查没有其他用户修改过数据库中的这个属性的值。...比如,当我们设置Name为并发令牌,然后通过ID来修改User的PassWord的时候,EF会生成如下的修改语句:
UPDATE [User] SET [PassWord] = @p1
WHERE [ID...同样我们也可以使用Fluent API配置属性为时间戳,代码如下:
class MyContext : DbContext
{
public DbSet Blogs { get...在异常中,我们将当前上下文的版本号和数据库现有的版本号进行对比,发现当前上下文的版本号为过期数据,则不更新,并返回失败.
请仔细看代码中的注释.