ef core数据库迁移添加默认数据会出现 select top(1) 语法问题,where 0 过滤条件
Dm.DmException (0x80004005): 第8 行附近出现错误:
查询使用值表达式作为过滤条件 [sql]: {SELECT "a"."RoleId"
FROM "AbpOrganizationUnitRoles" AS "a"
INNER JOIN (
SELECT "a0"."Id", "a0"."Code", "a0"."ConcurrencyStamp", "a0"."CreationTime", "a0"."CreatorId", "a0"."DeleterId", "a0"."DeletionTime", "a0"."DisplayName", "a0"."EntityVersion", "a0"."ExtraProperties", "a0"."IsDeleted", "a0"."LastModificationTime", "a0"."LastModifierId", "a0"."ParentId", "a0"."Status", "a0"."TenantId", "a0"."UnitType"
FROM "AbpOrganizationUnits" AS "a0"
WHERE (:__ef_filter__p_2 = 1 OR "a0"."IsDeleted" = 0) AND (:__ef_filter__p_3 = 1 OR ("a0"."TenantId" IS NULL))
) AS "t" ON "a"."OrganizationUnitId" = "t"."Id"
WHERE 0}; [params]: {:__ef_filter__p_2=False} {:__ef_filter__p_3=False};
WHERE 0 是 EF Core 生成的,可能是由于 HasQueryFilter 配置的问题
modelBuilder.Entity()
.HasQueryFilter(e => !e.IsDeleted); // 避免EF Core 生成
WHERE 0