У меня есть такой класс:Переходя выражение в лямбда
public class SomeClass
{
public string Text1 { get; set; }
public string Text2 { get; set; }
public int Number { get; set; }
}
И у меня есть список этих классов объектов:
List<SomeClass> myList = new List<SomeClass>();
Я хочу, чтобы запросить этот список с помощью LINQ (лямбда-синтаксис):
var result = myList.Where(obj => obj.Text1 == "SomeString");
Есть ли способ передать свойство (например, по имени строки), по которому я хочу выполнить этот запрос LINQ? В этом примере я выполняю поиск по свойству Text1, но предположим, что хочу динамически вызывать этот поиск в Text1 или Text2 (определенный во время выполнения). Я хочу, чтобы иметь возможность передать имя свойства, в котором выполняется этот поиск, и проверить, является ли это свойство строкой, так что я уверен, что этот поиск МОЖЕТ быть выполнен в первую очередь.
Возможно ли это? Я знаю, что «Размышления и выражения» имеют к этому какое-то отношение, но я их не очень хорошо знаю.
Благодаря
Вы не можете передавать динамические параметры по умолчанию с помощью LINQ, но есть библиотеки, которые можно использовать для достижения этой цели. –