У меня есть запрос LINQ to SQL, возвращающий строки из таблицы в объект IQueryable.
IQueryable<MyClass> items = from table in DBContext.MyTable
select new MyClass
{
ID = table.ID,
Col1 = table.Col1,
Col2 = table.Col2
}
Затем я хочу выполнить запрос SQL "WHERE ... IN ...." по результатам. Это прекрасно работает, используя следующее. (вернуть результаты с идентификатором ID1 ID2 или ID3)
sQuery = "ID1,ID2,ID3";
string[] aSearch = sQuery.Split(',');
items = items.Where(i => aSearch.Contains(i.ID));
То, что я хотел бы сделать, это выполнить ту же операцию, но не обязательно указывать часть i.ID. Поэтому, если у меня есть строка с именем поля, к которому я хочу применить предложение "WHERE IN", как я могу использовать это в методе .Contains ()?