在C#的下面粗略的示例代码中,我必须在条件中声明一个字符串,并且我无法从该大括号中访问它
if(//some condition)
{
string value1 = "something";
}
//push to database value1
Run Code Online (Sandbox Code Playgroud)
在上面的代码编译器中说The name 'value1' does not exists in the current context我需要value1以这样的方式声明它必须在整个页面中访问.我试过protected value1但是那也没用.我讨厌将它作为一个单独的类使用.无论如何要在全球范围内宣布?
在大括号内声明时,只在大括号内(也称为块)给它作用域.
在大括号外声明它以给它更大的范围.
在此示例中,它将在声明块的范围内,并且在if语句之外可用:
string value1;
if(//some condition)
{
value1 = "something";
}
//push to database value1
Run Code Online (Sandbox Code Playgroud)
我建议阅读这篇文章,了解一下C#中的范围.