【发布时间】:2019-04-14 23:31:51
【问题描述】:
我有一个类似这样的键值对列表
List<Subscriptions> subs = new List<Subscriptions>();
subs.Add(new Subscriptions() { Id = 1, Name = "ABC" });
subs.Add(new Subscriptions() { Id = 1, Name = "DEF" });
我可以搜索一个键(ID 或名称),但我想要实现的是用户定义他们想要搜索的键 ID 或名称
现在我正在使用这种方法根据名称值过滤列表
var filtered = subs.Where(sub => sub.Name.IndexOf(SearchString.Text,StringComparison.OrdinalIgnoreCase) >=0);
sub.Name 在这里是静态定义的,我希望用户选择他们希望他们的搜索基于什么
例如,如果我们有 abc:Name 程序在 Name 键下搜索 abc,如果我们有 1:Id,那么它会在 ID 中搜索 1。 这只是一个示例,在实际场景中,我的列表中可以有多个字段。 我希望我能说清楚。
【问题讨论】:
标签: c# list keyvaluepair