2017-01-10 168 views
0

我已经4个字典一样,C#: - 遍历4字典

Dictionary<string, string> home = new Dictionary<string, string>(); 
Dictionary<string, string> home1 = new Dictionary<string, string>(); 
Dictionary<string, string> away1 = new Dictionary<string, string>(); 
Dictionary<string, string> away2= new Dictionary<string, string>(); 

现在我想执行的断言他们的键和值它们。我应该怎么做?

我想到如下将它们相加,

var dic = new[] { home , home1 , away1 , away2}; 

,然后用开关,但它似乎难以作为开关不能在阵列中使用。那么我应该如何处理这个问题呢?

+1

那么你的尝试有什么问题?你是否收到任何错误或异常? –

+1

你想在每个'Dictionary '中的每个'KeyValuePair 声明' 'foreach(var对in dic.SelectMany(x => x)){//声明'pair'}''。 –

+0

@JasonBoyd感谢您的Foreach循环,但现在我必须在每对Pair上运行不同的Assert条件。我怎样才能找出哪一对是哪一对呢?我的意思是我们能否得到dic。名字?所以我可以运行里面的开关? –

回答

0

你为什么不创建一个功能断言字典,然后在阵列上循环并调用它,像这样:

foreach (var element in dic) 
{ 
    AssertOnDictioanry(element); 
} 

希望这是有益的。