Невозможно создать постоянное значение типа X - PullRequest
0 голосов
/ 19 февраля 2019

У меня проблема с запросом Linq-To-Entities о отложенном выполнении, которое я пытаюсь понять.Вот код:

public QuestaoSimulado GetByID(int idQuestao)
{
    var query = (from questao in ctx.tblQuestoes
                    where questao.intQuestaoID == idQuestao
                    select new QuestaoSimulado()
                    {
                        Enunciado = questao.txtEnunciado,
                        Comentario = questao.txtComentario,
                        Id = questao.intQuestaoID,
                        Ano = questao.intYear ?? 0,
                        Tipo = questao.bitCasoClinico == "1" ? (int)Questao.tipoQuestao.DISCURSIVA : (int)Questao.tipoQuestao.OBJETIVA,
                        Video = ctx.tblVideo_Questao_Simulado.Any(v => v.intQuestaoID == questao.intQuestaoID)
                }).FirstOrDefault();
    return query;
}

Этот конкретный запрос вызывает это исключение:

NotSupportedException: невозможно создать постоянное значение типа "tblVideo_Questao_Simulado".В этом контексте поддерживаются только примитивные типы или типы перечисления.

И я понимаю, что это происходит потому, что метод Any() в подзапросе не откладывается и выполняется мгновенно в базе данных (пожалуйста, исправьтеменя, если я ошибаюсь).

Теперь проблема: этот запрос не работает на моей машине из-за этого, но тот же код работает на машине коллеги.Кроме того, он не работает в нашей среде тестирования, но работает на производстве.Я пытаюсь найти информацию, чтобы понять, почему она работает в одной среде, а не в другой.Возможно, это происходит потому, что версия фреймворка отличается или что-то еще (я использую .Net Framework 4.7.1), но мне все равно не удалось найти что-нибудь полезное для понимания этого сценария

Любой светоб этой ситуации действительно ценят.

Спасибо!

РЕДАКТИРОВАТЬ:

Тестирование в наших средах, разница в том, что dll, который работаетсоздается в Visual Studio 2012, но тот же код вызывает это исключение в Visual Studio 2017. Я ищу информацию о различиях в компиляции из обеих версий.Если у кого-то есть идеи, было бы здорово!

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