查询数据,不包含任何区分符

时间:2019-03-01 12:18:00

标签: entity-framework-core

我在当前项目中使用的是Entity Framework 2.2.2,并且必须对数据库进行一些更专业的查询。
在开发过程中,我总是检查EF产生的查询,以确保它不会做超出我期望的事情。
目前,我正在TPH(按表分层结构)场景中工作,我只想查询基类的某些属性,但是EF始终在WHERE子句中包含鉴别符。

最小样本查询如下

SELECT `x`.`Id` AS `Id0`, `x`.`Id`
FROM `TestResults` AS `x`
WHERE `x`.`discriminator` IN (2, 3, 1, 0)

它后面的查询大致如下:

Context.TestResults
       .Select(x => new
       {
           Id = x.Id
       });

尽管在我看来,这实际上并不会影响性能,但我想知道是否可以以某种方式为特定查询禁用discriminator列,从而避免使用WHERE子句?

0 个答案:

没有答案