投稿者 YuO  (社会人) 投稿日時 2015/12/24 16:29:51
ぱっと見,
・Dictionaryの初期化で用いているNew String(" ... ")は不要 (というか無駄) なので,そのまま" ... "と書く
・Dictionaryに対してFirstOrDefault拡張メソッドでなめるよりも,TryGetValueメソッド使った方がよい
あたりでしょうか。

後者に関して,Dictionaryの初期化時にIEqualityComparerを渡せるため,
これを渡しているとFirstOrDefaultとTryGetValueで比較のされ方が異なってきます。
# あと,FirstOrDefaultはOption Compareが効くけれどもTryGetValueは効かない