我从两个来源看到了两种方法:
首先:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>()
.Property(p => p.Timestamp)
.IsRowVersion();
}
第二:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Author>()
.Property(a => a.RowVersion)
.IsConcurrencyToken()
.ValueGeneratedOnAddOrUpdate();
}
两种情况我都使用byte[]
作为属性。
有什么区别,什么是可取的?
这是旧的,但是如果其他任何人都发生在它上,因为在EF Core 1.1'Isrowversion'中的简介只是围绕'isConcurrencyToken'和dureat veralegeneratedOgenDoreDonadDorupdate的包装器。Isrowversion将自动为列的Rowversion选择正确的数据类型,我认为IsConcurrencyToken并非如此。