生成的错误是“条件编译已关闭”。
来自MSDN的条件编译黑客很普遍,但失败了。
有几个像这样的问题: Conditional Compilation is turned off in Razor?
他们都指出了答案:
/*@cc_on @*/
从MSDN上看到的文章:
http://msdn.microsoft.com/en-us/library/5y5529x3(v=vs.90).aspx
但是,这个hack很失败,或者我似乎无法实现它。尾随@*
会导致.cshtml文件中的剩余代码被注释掉。此外,@cc_on
给出错误“cc_on在当前上下文中不存在”。
这是在.cshtml文件中测试的一段代码:
<script type="text/javascript">
@for(int i = 0; i < 5; i++)
{
document.write(@i);
}
</script>
这将导致“条件编译关闭”消息。试图在其中插入变通方法会导致各种其他消息,例如“cc_on”在for循环中不存在于上下文中,“期望”,“或”期望;“或”预期的“。
如何在javascript脚本标记中使用razor for循环?
答案 0 :(得分:5)
尝试使用<text></text>
<script type="text/javascript">
@for(int i = 0; i < 5; i++)
{
<text>var that = this;</text>
}
</script>