【发布时间】:2016-08-12 04:45:52
【问题描述】:
我对 C#/Unity 还很陌生,请见谅。
我正在编写一个过滤系统,它将在运行时根据类的任何属性过滤列表。 我计划建立某种 whereclause 来过滤列表(我知道我可以访问服务器来获取我需要的列表,但目前只想过滤我已经拥有的数据)
假设我有一个包含 4 个属性的类“MyClass”列表:“param1”..“param4”
如果我想通过 param1 和 param2 正常过滤它,我可以这样做:
List<MyClass> myList = new List<MyClass>(existinglist);
myList = myList.Where(g => g.param1 == somevalue && g.param2 == someothervalue).ToList();
如何在运行时生成相同的 where 子句?
谢谢!
【问题讨论】:
-
什么意思?那是一个运行时间。
-
我的意思是不必像在我的示例中那样对我想要搜索的属性进行编码,我需要根据用户想要过滤的内容构建一个动态 whereclause
-
我不明白让用户选择过滤器如何阻止您这样做?你的代码有什么问题?
标签: c# linq list collections