2
如何在where語句中使用動態字段名?LINQ動態字段在.Where語句中
例如:我可以使用,
MyList.Where(x => x.Name == "MyName");
但如何像這樣使用?
string MyField = "Name";
MyList.Where(x => MyField == "MyName");
如何在where語句中使用動態字段名?LINQ動態字段在.Where語句中
例如:我可以使用,
MyList.Where(x => x.Name == "MyName");
但如何像這樣使用?
string MyField = "Name";
MyList.Where(x => MyField == "MyName");
你可以使用PropertyInfo
從System.Reflection
並利用其GetValue()
方法:)
PropertyInfo inf = typeof(YourClass).GetProperty("PropertyName");
MyList.Where(x => inf.GetValue(x) == "MyName");
對於它的工作,當然變量Name
應該是Property
像這樣:
public string Name { get; set; }
希望能幫到:)
感謝您的回覆,請問您能寫出示例代碼嗎? –
如果確實有幫助,請做標記爲答案:) – faztp12