0

我有以下代码:

var op1 = new List<KeyValuePair<string, string>>();
op1.Add(new KeyValuePair<string, string>("8-9-10-11-12-13", "All"));

只是一个例子,但我有 3 个 op1、op2 和 op3。然后我有一个循环来循环其中一个中的值。我想根据在别处所做的选择循环其中一个,所以我有:

foreach (KeyValuePair<string, string> kvp in op1)
{

但我想动态改变 op1。谁能给我建议?

谢谢

4

2 回答 2

1
var opx = false ? op1 : true ? op2: op3;  // the condition logic here is just to show, do not do this :P 

//later
foreach (KeyValuePair<string, string> kvp in opx)

将您的选择分配给一个变量,在这里opx并循环opx将在您的选择上循环

于 2013-09-11T08:23:18.943 回答
0

我假设这里的目的是不要在 if 语句或类似语句中多次重复 foreach 语句?

您必须有一些逻辑来确定要循环遍历哪个列表?我会创建第四个列表(让我们称之为 op)并在你的 foreach 语句中使用 op。然后在 foreach 上方,确定要循环遍历哪个并将其分配给 op 变量。这样可以减少任何代码重复,但仍允许循环选择的循环

于 2013-09-11T08:22:10.213 回答