ASP.NET MVC 4 beta - 一个部分内的脚本 - “{`缺失

时间:2012-03-01 09:22:22

标签: asp.net-mvc-4

我的_layout共享视图中有一个脚本部分,以便根据需要将脚本添加到视图中。 在升级到MVC 4 beta之后,MVC不会识别该部分的关闭}并且我得到一个错误。 我看到其他线程说使用@(Html.Raw("});"))(我正在使用JQuery)。这不是一个好的解决方案,因为我的部分中有超过30个结束}

我可以将脚本放在JS文件中,但这不是一个好的解决方案。

针对此问题的任何解决方案?

1 个答案:

答案 0 :(得分:1)

我现在正在遇到同样的事情,经过大量的实验,看起来这是由for循环导致的某种Razor解释器错误的结果@section ScriptSection { }。我的循环是完全标准的:

for (var i = 0; i < viewModel.questions.length; i++) {
...
}

但删除后,Razor正确找到了我的结尾}。我不知道为什么,但它显然认为<正在开始标记。将我的循环代码更改为:

for (var i = 0; viewModel.questions.length > i; i++) {
一切顺利。我知道其他东西可能对此有所贡献,因为它在一段时间内工作正常然后破裂了。希望这会有所帮助。