当前上下文错误中不存在,但应该是ASP.NET c#
本文关键字:ASP NET 上下文 错误 不存在 | 更新日期: 2023-09-27 17:49:43
以下是代码:
for (int i = 0; i < Model.Count; i++)
{
Writer.WriteBeginTag("li");
if (i % 2 == 1)
{
string myVar = "even ";
}
if ((i+1) % 3 == 0)
{
myVar += "third";
}
Writer.WriteAttribute("class", ""); // I want to use myVar here
Writer.Write(HtmlTextWriter.TagRightChar);
Writer.WriteEndTag("li");
}
我对.NET或C#不是很熟悉。我在第二个myVar
上得到一个错误The name "myVar" does not exist in the current context
。如果我把这一行注释掉,那么在第一个myVar
上就会有一条消息The variable "myVar" is assigned but its value is never used.
。我真的不明白这怎么会或为什么会断章取义。
有什么想法吗?
您正在第一个if
语句的作用域中创建变量myVar
,因此它在第二个语句中不可用。你需要事先创建它:
string myVar = "";
if(...)
{
//use of myVar
}
if(...)
{
//use of myVar
}
myVar
仅存在于if
内部。
您需要将声明移动到循环的主体。