Запрос данных без включения какого-либо дискриминатора - PullRequest
0 голосов
/ 01 марта 2019

Я использую Entity Framework 2.2.2 в своем текущем проекте, и мне приходится делать еще несколько специализированных запросов к базе данных.
Во время разработки я всегда проверяю запросы, созданные EF, чтобы убедиться, что они не делают больше.чем я ожидаю.
В настоящее время я работаю в сценарии TPH (Table-Per-Hierarchy), где я хочу запрашивать только некоторые свойства базового класса, но 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
       });

Хотя это не сильно повлияет на производительность в моемcase мне интересно, могу ли я как-то отключить столбец дискриминатора для конкретных запросов, чтобы избежать предложения WHERE?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...