动态选择一个c#List

时间:2013-09-11 08:17:54

标签: c# asp.net

我有以下代码:

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。任何人都可以建议我吗?

感谢

2 个答案:

答案 0 :(得分: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,这将循环您的选择

答案 1 :(得分:0)

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

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

循环