Я пытаюсь использовать запрос linq для динамического выбора записей на основе идентификатора учетной записи. Идентификатор учетной записи - это столбец int в sql-сервере.linq dynamic where where with или condition на столбце INT
var idList = new int[123, 456]; //these number change with each user.
foreach (var id in idList) {
query = query.WHERE(cs => cs.pkID = id);
}
Вышесказанное делает это предложением AND where. Я бы предпочел, чтобы это было OR. Вышеупомянутый idList может содержать от 1 до 100. Варьирование с каждым пользователем.
Как я могу заставить работу linq работать с предложением OR. Содержит не работает на столбцах INT.
Хотелось бы, чтобы выбор выглядел примерно так.
select * from table where id = 123 or id = 456
У меня есть куча других столбцов, которые можно добавить к предложению where. Получение динамической работы ИЛИ дает мне головную боль.
Спасибо.
SQL будет использовать 'IN':' где id в (123, 456) '. –
Я использую linq для решения этой проблемы. будьте внимательны. – user3434990
@ user3434990 Хотя ссылка, предоставленная как дубликат для этого вопроса, очень полезна, я думаю, что использование Содержит в вашем случае - лучший вариант. –