gpt4 book ai didi

c# - 没有转义反斜杠的 Newtonsoft.Json SerializeObject

转载 作者:IT老高 更新时间:2023-10-28 12:51:33 41 4
gpt4 key购买 nike

给定代码:

dynamic foo = new ExpandoObject();
foo.Bar = "something";
string json = Newtonsoft.Json.JsonConvert.SerializeObject(foo);

输出如下:

"{\"Bar\":\"something\"}"

在调试大型 json 文档时,很难阅读 - 使用 Newtonsoft.Json 的内置功能(不是可能破坏事物的正则表达式或黑客)有没有办法使输出成为带有 valie 的字符串:

{Bar: "something"}

最佳答案

如果您在从 WebApi 方法返回值时发生这种情况,请尝试返回对象本身,而不是序列化对象并返回 json 字符串。 WebApi 默认会将响应中的对象序列化为 json;如果你返回一个字符串,它会转义它找到的任何双引号。

所以而不是:

public string Get()
{
ExpandoObject foo = new ExpandoObject();
foo.Bar = "something";
string json = Newtonsoft.Json.JsonConvert.SerializeObject(foo);
return json;
}

试试:

public ExpandoObject Get()
{
ExpandoObject foo = new ExpandoObject();
foo.Bar = "something";
return foo;
}

关于c# - 没有转义反斜杠的 Newtonsoft.Json SerializeObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20312974/

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