我正在尝试将我的asp.net核心应用程序从使用Azure SQL数据库迁移到使用CosmosDB数据库。
尝试使用以下错误消息创建集合时遇到问题:
System.InvalidOperationException:'实体类型'IdentityRole'具有属性'ConcurrencyStamp'作为其并发令牌,但仅支持'_etag'。考虑使用“ EntityTypeBuilder.UseETagConcurrency”。
我已经尝试了这些更改,但都没有解决问题。
UseETagConcurrency
在建立模型时加了builder.Entity<IdentityRole>().ToContainer("Roles").UseETagConcurrency();
IdentityRole
,将_etag
属性添加到Role
模型关于如何解决此问题的任何想法?
谢谢您的帮助。
弄清楚了!问题是角色和用户已经具有并发令牌,该令牌存储在属性“ ConcurrencyStamp”中。因此,我们需要告诉EF这个属性是我们要用于Etag并发的属性。因此,不要UseETagConcurrency()
使用以下内容:
builder.Property(d => d.ConcurrencyStamp)
.IsETagConcurrency();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句