Поиск по предложению Where в LINQ с использованием динамических свойств

В основном я пытаюсь создать запрос, и я не знаю, почему Microsoft так усложнила это в Entity Framework и LINQ. У меня есть различные параметры STRINGS. Итак, если вы видите переменную, предположим, что это строка, переданная откуда-то.

             users = this.entities.tableUsers
               .Where(searchfield+" LIKE %@0%", search)
               .OrderBy(x => x.GetType().GetProperty(order_by).GetValue(x, null).ToString())
               .Skip(Convert.ToInt32(limit_begin))
               .Take(Convert.ToInt32(limit_end))
               .ToList();

Мой вопрос заключается в том, что поместить внутрь функции «Где ()» в LINQ.

Я хочу найти поле со строкой «поле поиска» для значения.contains ()«поиск».

Не уверен, почему Visual Studio не позволит мне сделать это легко.

Я тоже пробовал это, не повезло:

.Where(x => x.GetType().GetProperty(searchfield).GetValue(x, null).ToList().Contains(search))

Примечание. :Я не хочу устанавливать какие-либо новые библиотеки, это должно быть невероятно легко и просто для современного языка. Я не возражаю, если запрос возвращает все строки, и я просматриваю его ПОСЛЕ с помощью.Contains ().

6
задан Dexter 16 August 2012 в 19:31
поделиться