Dictionary<TKey, TValue>.TryGetValueメソッドが を返す場合true、パラメータvalueには指定されたキーに関連付けられた値が含まれます。
指定されたキーに関連付けられた値を変更する例をいくつか読みました。TryGetValueメソッドを呼び出した後、キーに関連付けられた値の更新がインデクサーによって実行され、さらにアクセスが行われますDictionary(次のコードを参照)。
var d = new Dictionary<string, MyClass>();
...
MyClass obj;
if (d.TryGetValue(key, out obj))
{
d[key].Update(...); // update the value
}
objオブジェクトは、キーに関連付けられた値への参照です。以下のコードのように、オブジェクトを直接使用して値を更新してみませんか?
MyClass obj;
if (d.TryGetValue(key, out obj))
{
obj.Update(...); // update the value
}