private List<Dictionary<string, string>> GetDictionaries(List<Dictionary<string, string>> dictionaries, string key, string value) {
List<Dictionary<string, string>> result = new List<Dictionary<string, string>>();
foreach (Dictionary<string, string> dic in dictionaries) {
if (dic.ContainsKey(key) && dic[key].Equals(value)) {
result.Add(dic);
}
}
return result;
}
This should get you near what you need.
Hope this helps.