为了管理软删除的实体,我想对实现ISoftDelete的每个实体应用全局查询过滤器,但是这段代码不起作用:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<ISoftDelete>().HasQueryFilter(p => !p.IsDeleted);
}
我收到此错误:
System.ArgumentException: 'The entity type 'Shoppy.Core.Commons.ISoftDelete' provided for the argument 'clrType' must be a reference type.'
是否可以使用Interface作为实体类型?我应该循环每个modelBuilder.Model.GetEntityTypes()
并手动应用查询(例如this)吗?或许是另一种方式?
感谢您的帮助!