我想有一种非常简洁的方法可以做到这一点,但我是.NET的新手。我有一堆映射对。虽然映射有两种方式。我想把它们存储一次,就像这样:
{"a", "a'"},
{"b", "b'"},
...
使用Dictionary
或其他内容。我知道我可以使用linq轻松查询字典,但是如果我查询一个值或者如果我输入一个键,我怎么能有条件地让它返回键呢?例如,如果输入b'
,则输出b
。如果输入a
,请输出a'
。
顺便说一下,数据结构不一定是字典。我只想要最简洁的方式来存储它以及最简洁的方法来检索它。这不是性能密集型的。
答案 0 :(得分:3)
最简洁的方法是使用Dictionary并将所有内容放入其中,例如:
{ "a", "a'" }
{ "a'", "a" }
{ "b", "b'" }
{ "b'", "b" }
查找和使用将快速而清晰
答案 1 :(得分:2)
创建字典扩展方法。
public static string Retrieve(this Dictionary<string,string> dictionary, string value)
{
var item = (from v in dictionary
where v.Key == value || v.Value == value
select (v.Key == value) ? v.Value : v.Key
).FirstOrDefault();
return item;
}