1

我可以从 if 代码块中保留一个变量吗?

我有

if(some condition){
  var result=queryexecute(some query);
}

...Some non dependent code...

if(result != null){
  ....
}

我得到的结果在当前上下文中不存在。我猜结果是本地的 if 块。由于两者之间的代码,我不想合并这两个代码块。有什么方法可以在第二个 if 块中定义结果?

queryexecute 的返回类型是“public static IEnumerable”。我对此太了解了,不知道如何声明该类型的空对象。但如果有人愿意解释,我可以这样做。

4

2 回答 2

7

您将需要从var声明类型切换:

IEnumerable result = null; //or whatever it is

if(some condition){
  result=queryexecute(some query);
}

...Some non dependent code...

if(result != null){
  ....
}
于 2013-11-11T22:14:17.413 回答
1

或者:

var result = some_condition ? queryexecute(somequery) : null;

// ...

if (result != null) {
    ...
}
于 2013-11-11T22:35:27.997 回答