Использование LINQ для сравнения строки поиска со значением всех строковых свойств класса EF - PullRequest
0 голосов
/ 13 марта 2012

В моем приложении ASP.NET у меня есть класс EF Product (полученный из таблицы Product DB), и я хочу выполнить поиск по полям string с использованием встроенногоLINQ.

Так как я предсказываю, имя и количество полей (свойств) изменится Я не хочу сильно связывать мой код с определением таблицы.Как я могу сравнить значения всех полей в таблице со строкой поиска путем итерации по всем полям таблицы (свойствам)?

Я знаю, что один вариант - через отражение , есть ли более простой и быстрый способ выполнить эту задачу?

1 Ответ

0 голосов
/ 13 марта 2012

В конце концов, ваш класс EF все еще является обычным классом .NET. Если EF явно не предоставит некоторую библиотеку для циклического прохождения свойств (о чем я не знаю), вам все равно придется использовать отражение для этого.

var properties = typeof(Product).GetProperties(BindingFlags.Instance);
foreach (var property in properties) 
{
    ...
}
...