gpt4 book ai didi

asp.net-mvc-4 - 从 .net 4 升级到 4.5 会破坏 Javascript 中的 Html.Raw 调用

转载 作者:行者123 更新时间:2023-12-02 14:44:27 25 4
gpt4 key购买 nike

我在 c# MVC 3 razor 页面中有以下代码,我将序列化数据传递到 KnockoutJs 的 JavaScript 变量中:

    @{   
var listData = new JavaScriptSerializer().Serialize(Model.ListItems);
var pagerData = new JavaScriptSerializer().Serialize(Model.Pager);
}


// additional code

<script type="text/javascript" >

var ListData = @(Html.Raw(listData)); // <-- Syntax Error here
var PagerData = @(Html.Raw(pagerData)); // <-- Syntax Error here

// additional js code

</script>

升级到 VS 2012 后,我在上面的 Html.Raw 行末尾的 javascript 分号后面收到错误曲线。该项目符合要求,但 VS 2012 在每行的错误列表中显示“语法错误”。如果没有分号,JavaScript 也会显示“语法错误”。

此代码在以前的版本中没有问题。这是 VS 2012 解析器中的错误吗?有没有办法避免生成的错误?

编辑还有其他人看到这个问题吗?下面是一个简化版本,在新页面中隔离了相同的问题。如果在 ListData 行末尾添加分号,则会出现 javascript 语法错误,如果没有分号,则会出现在下一行。这是VS2010和VS2012之间的javascript编译器的错误吗?

@{   
var listData = "test";
var pagerData = "test2";
}
<script type="text/javascript" >
var ListData = @(Html.Raw(listData))
var PagerData = @(Html.Raw(pagerData))
</script>

最佳答案

请对此connect issue添加投票。我们将在下一个版本的 VS 中解决这个问题。我已将您的重现代码附加到此错误中,并添加了这篇文章的链接作为该问题的另一种表现形式。

关于asp.net-mvc-4 - 从 .net 4 升级到 4.5 会破坏 Javascript 中的 Html.Raw 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12275095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com