EF Core генерирует неверный SQL с использованием .contains () в списке Int - неверный синтаксис рядом с '$' [дублироватьC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 EF Core генерирует неверный SQL с использованием .contains () в списке Int - неверный синтаксис рядом с '$' [дублировать

Сообщение Anonymous »

Я использую EF Core и написал запрос, как это: < /p>

Код: Выделить всё

public async Task GetByIdsAsync(List ids)
{
return await _dbContext.Entities
.Include(e => e.RelatedEntities)
.Where(e => ids.Contains(e.Id))
.ToListAsync();
}
< /code>
Но во время выполнения я получаю следующую ошибку: < /p>

microsoft.data.sqlclient.sqlexception (0x80131904): Incorret Syntax рядом с $ '. это: < /p>
SELECT ...
FROM [Entity] AS [e]
LEFT JOIN [RelatedEntity] AS [r] ON [e].[Id] = [r].[EntityId]
WHERE [e].[Id] IN (
SELECT [i].[value]
FROM OPENJSON(@__ids_0) WITH ([value] int '$') AS [i]
)
Это приводит к сбою, хотя идентификаторы - это просто простой список или int [] , переданный в метод. /> Это, кажется, происходит только тогда, когда список из целых чисел (), не строки.
Почему EF-ядро генерирует OpenJson (... с ([значение] int '$')) Когда я использую список ? 9)?

Подробнее здесь: https://stackoverflow.com/questions/796 ... orrect-syn
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»