これは奇妙な魔法のようなもので、ContainsKey は false を返します。同じ結果で InvariantCulture 比較子を使用しようとしました。
GameCommands = new Dictionary<string, GameCommand>(StringComparer.Ordinal)
{
{"Start new game with deck", StartGame},
{"Tell color", TellColor},
{"Tell rank", TellRank},
{"Drop card", Drop},
{"Play card", Play},
};
Debug.WriteLine(GameCommands.ContainsKey("Tell color"));
間違い
キーの引用符を削除して再度入力することで解決します。なぜこれが起こっているのか知りたいです。