Здесь следует использовать либо Contains, либо TryGetValue.
if (myDic.ContainsKey)
{
// get value out of dictionary
var myValue = myDic["myKey"];
}
или
string myValue;
if (myDic.TryGetValue("myKey", out myValue)
{
// do something with myValue
}
[в приведенном выше примере предполагалось, что в вашем словаре есть значения типа string, но это может быть что угодно]
Преимущество второго подхода состоит в том, что вы можете как проверить, существует ли элемент в словаре, так и получить его значение как одну атомарную операцию, вместо того, чтобы сначала выполнять проверку Contains
, а затем второй вызовполучить значение.