c# - 使变量在 C# 中的 if block 之外持续存在

标签 c# razor scope

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

我有

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

...Some non dependent code...

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

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

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

最佳答案

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

IEnumerable result = null; //or whatever it is

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

...Some non dependent code...

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

关于c# - 使变量在 C# 中的 if block 之外持续存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19916985/

相关文章:

c# - Xamarin.Forms ListView 绑定(bind)问题

c# - 修改时保留图像数据的最佳方法是什么?

c# - DropDownlistFor MVC 4 中的 Optgroup?

javascript - 为什么没有 'var' 关键字的变量不在 Chrome 控制台的全局范围内?

java - spring3 中有页面范围吗?

Javascript变量复制范围

c# - 在 C++ 应用程序中使用 C# dll

c# - 为什么 Type.IsAssignableFrom 方法在这里返回 false?

asp.net-mvc - T4MVC 在控件库中使用扩展方法

c# - 名称 'image' 在当前上下文中不存在