gpt4 book ai didi

c# - 在 Newtonsoft JSON 中转义引号

转载 作者:可可西里 更新时间:2023-11-01 08:25:28 25 4
gpt4 key购买 nike

我有一个对象:

public class Test 
{
public string Prop1 { get; set; }
}

我想在 View 中将它序列化为 json,所以在我的 cshtml 中:

<script type="text/javascript">
var myJson = JSON.parse('@Html.Raw(JsonConvert.Serialize(Model.MyTest))');
</script>

它一直有效,直到 Prop1 包含引号,因为它被呈现为:

var myJson = JSON.parse('{"Prop1":"\"Quoted text\""}');

不幸的是,这样的行会抛出解析错误。我知道它应该是:

 var myJson = JSON.parse('{"Prop1":"\\"Quoted text\\""}');

如何配置 Newtonsoft 以正确的方式对其进行序列化?

最佳答案

不要对字符串进行二次解析,因为已经序列化为JSON,可以直接在Javascript中使用(JSON中的JS)。

var myJson = @Html.Raw(JsonConvert.Serialize(Model.MyTest));

将输出:

var myJson = {"Prop1":"\"Quoted text\""};

并且,because you always need a JSFiddle to prove it works.

关于c# - 在 Newtonsoft JSON 中转义引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30845508/

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