EF Core Как выбрать несколько строк, используя более одного конкретного значения для каждой строкиC#

Место общения программистов C#
Ответить
Anonymous
 EF Core Как выбрать несколько строк, используя более одного конкретного значения для каждой строки

Сообщение Anonymous »

У меня есть таблица со столбцами SchoolId, SchoolYearId и ItemId с уникальным ограничением для всех трех. Эта таблица полностью отображается в EF Core 6. На стороне C# я есть список кортежей, где каждый кортеж содержит 3 целых числа. По сути, каждый кортеж идентифицирует 0 или 1 строку в моей таблице. Я хочу выбрать из моей таблицы только те строки, в которых эти 3 целых числа точно совпадают.
Я хотел бы иметь возможность сделать это в запросе EF, а затем, далее, я бы хотелось бы иметь возможность добавить в запрос пару .Include(). Что-то вроде:

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

var items = dataContext.Items
.Where(item => [[[ some function that will match 1 tuple to 1 row ]]])
.Include(item => item.SomeOtherItems);
В мире до EF я бы создал параметр с табличным значением и присоединил его к своей таблице Item. И я знаю, что все еще могу сделать это, используя .RawSql() (или... в любом случае я знаю, что есть способ), но тогда я не знаю, как сопоставить необработанный вывод sql с объектом, который затем может можно использовать для получения SomeOtherItems.
Я мог бы выбирать строки по одной или выполнить запрос, используя параметр значения таблицы, который возвращал бы ItemIds (которые я мог бы затем используйте для запроса других объектов), но мне не нравится ни одно из этих решений.

Подробнее здесь: https://stackoverflow.com/questions/787 ... or-each-ro
Ответить

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

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

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

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

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