我有以下代码:
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。任何人都可以建议我吗?
感谢
答案 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变量。这样可以减少任何代码重复,但仍然允许选择的循环通过
循环