Razor语法等价

时间:2011-02-25 17:40:06

标签: razor

以下行出现在我的一个javascript文件中,它在Razor中的语法是什么。

var initialData = <%= new JavaScriptSerializer().Serialize(Model) %>;

3 个答案:

答案 0 :(得分:22)

像这样:

@Html.Raw(new JavaScriptSerializer().Serialize(Model))

Html.Raw调用是必要的,以防止它被HTML转义。

答案 1 :(得分:7)

为了更简洁的感觉,你可以使用网页Json助手的编码方法:

var initialData = @Html.Raw(Json.Encode(Model))

答案 2 :(得分:1)

如果您希望序列化JavaScript正确支持DateTime,请使用Json.NET中的序列化程序。根据{{​​3}},甚至微软也使用它来与MVC4进行序列化。

var initialData = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model));