【发布时间】:2020-10-18 10:56:55
【问题描述】:
考虑以下示例:
string s = "this is formatted \" string \"";
当我在我的 web api 方法中将此作为纯字符串返回时:
return Ok(s)
它产生以下输出
这是格式化的“字符串”
但如果我将它作为对象返回
return Ok(new {
myStr = s
})
它不会正确转义字符串并返回以下输出
{
"myStr ": "this is formatted \" string \""
}
理想情况下我想要
{
"myStr ": "this is formatted " string "
}
我需要html字符串的格式,上面的例子只是为了演示。
【问题讨论】:
-
JSON 格式化程序不会为您这样做,也不应该这样做。您需要使用 WebUtility.HtmlEncode() 之类的内容创建字符串
-
@TiesonT。请检查编辑。
-
你想要的是一个无效的 JSON 响应,这就是引号被转义的原因
-
"myStr ": "this is formatted " string "是格式错误的 JSON 属性。您希望它为"myStr ": "this is formatted \" string \"",以便在解析时属性的值为this is formatted " string "。
标签: c# html asp.net json asp.net-core