我不能在这里复制我的代码,但是,例如,我有一个像这样的实体:
public class Test
{
public int ID {get; set;}
public string Name {get; set;}
public string Nationality {get; set;}
}
我创建了一个函数来返回这个类的列表:
public static List <Test> getList()
{
List<Test> testList = new List<Test>();
Test testList1 = new Test();
testList1.ID = 123;
testList1.Name = "asd";
testList1.Nationality = "qwe";
testList.Add(testList1);
return testList;
}
从查询字符串中我得到了 searchField 和 searchString,我将这些值存储在字符串 searchField 和 searchString 中。
我想要一些类似于此功能的东西(我知道这是错误的,但我想要那个功能):
list=testList.Where(x=>x.searchField.Contains(searchString));
我对获取列表或任何东西没有问题,但我只想要类似的东西。
最佳答案
你可以使用反射
:
list = testList.Where(x => (x.GetType()
.GetProperty(searchField)
.GetValue(x) as string).Contains(searchString)
);
关于c# - 从列表的自定义列中选择一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12814399/