如何使用.Where来访问字典中的值?

时间:2011-10-17 20:59:16

标签: c# linq where-clause

我只想要id等于“zj”的任何值

Dictionary<string,string> z = dm.UpdateAndReturnIdol(User, id, v).where(keys.equals("zj"));

1 个答案:

答案 0 :(得分:5)

如果返回类型为Dictionary<string, string>,那么您只需查找该值,例如

Dictionary<string, string> dictionary =  dm.UpdateAndReturnIdol(User, id, v);
string value = dictionary["zj"];

或者如果你不知道是否会有一个条目:

Dictionary<string, string> dictionary =  dm.UpdateAndReturnIdol(User, id, v);
string value;
if (dictionary.TryGetValue("zj", out value))
{
    // Use the value
}

这里没有必要使用Where - 字典的整个是你可以有效地按键查找...每个键只能有一个值,所以没有必要得到值的序列