gpt4 book ai didi

c# - .Where 语句中的 LINQ 动态字段

转载 作者:行者123 更新时间:2023-11-30 20:40:47 25 4
gpt4 key购买 nike

如何在where语句中使用动态字段名?

例子:我可以用,

MyList.Where(x => x.Name == "MyName");

但是这样怎么用呢?

string MyField = "Name";
MyList.Where(x => MyField == "MyName");

最佳答案

您可以使用 System.Reflection 中的 PropertyInfo 并使用其 GetValue() 方法:)

PropertyInfo inf = typeof(YourClass).GetProperty("PropertyName");
MyList.Where(x => inf.GetValue(x) == "MyName");

要使其正常工作,当然变量 Name 应该是一个 Property,如下所示:

public string Name { get; set; } 

希望对您有所帮助:)

关于c# - .Where 语句中的 LINQ 动态字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32941471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com