按值筛选出字典列表

时间:2017-12-19 04:08:29

标签: c# list dictionary

有没有办法通过使用值来过滤掉词典列表?

目前的实施是:

List<Dictionary<string, object>> queue = new List<Dictionary<string, object>>();
//Some code here
queue = queue.Where(x => (string)x[DictionaryKey] != "some Value Here").ToList();

但是这似乎不会根据传递的值返回已过滤的列表。

3 个答案:

答案 0 :(得分:1)

我认为你正在寻找类似的东西:

queue = queue.Where(x => !x.ContainsValue("some value here")).ToList();

它将返回列表中没有&#34值的所有Dictionary对象;这里有一些值&#34;。

答案 1 :(得分:0)

要过滤字典,请使用以下条件,x是一个字典,其中您只过滤没有指定值的对。

queue.Where(x => !x.ContainsValue("some Value Her"))

答案 2 :(得分:0)

你可以随时做到这一点

Foreach(Dictionary item in queue){
    if(item.Keys.Contains("value")){
        queue.Remove(item);
    }
}

可能会起作用