奇怪的问题,但我有一个用StringComparer.OrdinalIgnoreCase创建的字典,看起来像这样
AaA,10
aAB,20
AAC,12
然后我使用myDictionary [“AAA”]来查找与密钥相关联的值,但我还需要知道的是密钥的实际拼写在myDictionary中,例如在这种情况下,我希望它返回AaA。没有循环的任何方式吗? THX。
答案 0 :(得分:2)
string value = myDictionary.First(v => StringComparer.Create(CultureInfo.CurrentCulture,true)
.Compare(v.Key,"AAA") == 0)
.Key
答案 1 :(得分:1)
更改字典,使其如下所示:
public struct myValue
{
int myInt;
string MixedCaseWord;
}
var dictionary = new Dictionary<string, myValue>(StringComparer.OrdinalIgnoreCase);
var key = "AaA";
dictionary.Add(key, new MyValue { myInt = 10, MixedCaseWord = key });
var correctSpelling = dictionary["AAA"].MixedCaseWord;