У меня есть функция, которая принимает 3 string[]
, а затем с помощью EF6 запрашивает мою базу данных, чтобы попытаться найти совпадение. В списках не может быть ничего, одного или многих переменных.Выполнение запроса с помощью EF6 с использованием потенциально пустых списков
using (var db= new Db(ConnectionString))
{
var results =
await
db.dbases.Where(
w =>
portfolioSelected.Any(a => a == w.portfolio) &&
statusSelected.Any(a => a == w.statusname) &&
deskSelected.Any(a => a == w.assignedto)
).ToListAsync();
}
При попытке запроса я получаю нулевые результаты.
Как я могу написать это, чтобы 3 списка могли иметь любую композицию, в том числе пустую, и я получаю результаты, которые я желаю?
Вы пробовали использовать == DBNull.Value || a == w.portfolio? – easymoney202
см. Http://stackoverflow.com/a/34986244, если это связано – Drew
@ easymoney202 Я использую функцию .Any() для строки [], которая не будет работать, к сожалению, это не одно значение. –