[英].NET Core Object JSON Serialization to Javascript format
我将C#对象序列化为普通的JSON字符串时遇到了一些问题。
我使用JsonConvert(Newtonsoft的一个)将模型格式化为JSON。 问题是JSON字符串get在某些Javascript中使用,但格式不好,因为引用被写为“&quote;” 代替 ”'”。 有想法该怎么解决这个吗 ?
//...
@{
var dataJson = JsonConvert.SerializeObject(Model);
}
//...
<script>
function ChangeGroup(type) {
$.ajax({
url: //...,
data: @dataJson
});
}
</script>
我得到的是这个:
我忘了设置一些格式化选项?
你可以这样做:
@{
var dataJson = new HtmlString(JsonConvert.SerializeObject(Model));
}
默认情况下,ASP.Net Core在呈现@表达式之前将进行HTML编码,除非表达式求值为具有接口IHtmlContent(HtmlString具有)的类型。 另一种方式是写
@Html.Raw(dataJson)
在ASP.NET Core中有一个更短,更容易使用和记忆:
@Json.Serialize(Model);
分配给JavaScript值时,生成的JavaScript有效:
<script>
var model = @Json.Serialize(model);
</script>
有了这个,您不必担心HTML转义字符。
我使用以下内容将我的模型中的数据导入JS对象。 以为我会发布可能会帮助将来某人...
var items = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.Items));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.