javascript - .NET Core 对象 JSON 序列化为 Javascript 格式

标签 javascript c# json asp.net-core json.net

我在将 C# 对象序列化为纯 JSON 字符串时遇到了一些问题。

我使用 JsonConvert(Newtonsoft 的)将模型格式化为 JSON。问题是在某些 Javascript 中使用了 JSON 字符串,但格式不好,因为在引号中被写为“e;”而不是“'”。关于如何解决这个问题有什么想法吗?

//...
@{
    var dataJson = JsonConvert.SerializeObject(Model);
}
//...

<script>
    function ChangeGroup(type) {
        $.ajax({
            url: //...,
            data: @dataJson
        });
    }
</script>

我得到的是这样的:

error

有些格式选项我忘记设置了?

最佳答案

在 ASP.NET Core 中有一个更短、更易于使用和内存的方法:

@Json.Serialize(Model);

当分配给 JavaScript 值时,生成的 JavaScript 是有效的:

<script>
    var model = @Json.Serialize(model);
</script>

有了这个,您不必担心 HTML 转义字符。

关于javascript - .NET Core 对象 JSON 序列化为 Javascript 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48060681/

相关文章:

c# - 防止任务在运行时再次执行

php - 通过php5将json导入mysql5

c# - wpf保存图片的问题

json - Clojure API 中正确的 JSON 转义

javascript - 使用 Json 和 BS4 抓取 HTML 中的脚本标签

java - 使用 Javascript 从 WebView 调用 Activity 的方法

javascript - 在 JS 中打印未更改的字符串

javascript - mysql循环显示图像。需要帮助传递/设置每个图像的计数 - javascript

javascript - 根据日期属性对 javascript 对象进行排序

c# - 使用 ref 属性展平 xml 文件