【发布时间】:2012-07-03 09:36:08
【问题描述】:
生成的错误是“条件编译已关闭”。
来自 MSDN 的条件编译 hack 很普遍,但失败了。
有几个这样的问题: 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 脚本标签中使用 razor for 循环?
【问题讨论】:
-
@HatSoft - 大多数情况下是这样,尽管他们没有提到这个问题的目的的条件编译警告。在这里使用
@:和<text>可以从razor 生成javascript,但“条件编译”的警告仍然存在。
标签: c# javascript asp.net-mvc-3 razor