我有一个对象列表(MyObject
),它有10个属性。
Class MyObject{
string F1,
string F2,
....
string F10
}
var myList = new List<MyObject> ()
从那个mylist我必须过滤掉一些属性,并根据字符串列表中提供的输入获取所选项目的新列表。
var requiredFlields = new List<String> {"F1", "F2"}
我知道:
var o1 = myList.Select(a => new { a.F1, a.F2 }).ToList();
但它不允许我使用requiredFields列表进行过滤。
无论如何要实现这个目标吗?
答案 0 :(得分:0)
您可以使用(//table/tbody/tr[2]/td[10]/span/div/a[2][@role="button"])[1]
函数从类中获取属性详细信息。使用它来获取所有属性的详细信息。
遍历每个属性并检查该属性的名称是否存在于课堂中。
示例代码:
GetProperties()
在PropertyInf[] propertiesInfo = MyObject.GetType().GetProperties();
foreach(PropertyInfo item in propertiesInfo)
{
if(requiredFields.Contains(item.Name))
{
//Do your operation here
}
}
的帮助下,您可以检查属性名称,属性类型,GetSetMethod()
有关详情:PropertyInfo Class