生成的错误是“条件编译已关闭”.
来自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>
这将导致“条件编译关闭”消息.试图在其中插入变通方法将导致来自for循环的上下文“,”,“期望”,“或”期望;“或”预期“”中存在各种其他消息,例如“cc_on”.
如何在javascript脚本标记中使用剃刀for循环?
解决方法:
尝试使用< text>< / text>围绕您的js
<script type="text/javascript">
@for(int i = 0; i < 5; i++)
{
<text>var that = this;</text>
}
</script>