我有一些代码,失败是由于错误的变量范围困惑:在ASP.NET混合时的Javascript和剃刀MVC3
The name 'foo' does not exist in the current context
这是因为我感到困惑的一个变量的作用域问题。我认为这应该工作:
var foo = "<ul>";
@for (int i = 0; i < 10; i++)
{
foo += "<li>bar</li>";
}
foo += "</ul>";
剃刀语法应,因为在浏览器解释代码的时间调用for循环和可变foo
仍然在范围在JavaScript方面,剃刀语法基本上不可见。
但是,我得到的错误信息是来自编译器,所以C#试图引用foo
。我错过了什么,以及如何修改代码,以便我输出正确的JavaScript代码,以便像我试图执行的那样连接<li>bar</li>
?
谢谢!正是我在寻找' '和'@:'前缀的工作。 –
TMC