首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpResponseMessage JSON

HttpResponseMessage JSON
EN

Stack Overflow用户
提问于 2018-11-16 20:01:11
回答 1查看 252关注 0票数 0

我有一个模型"data“,其中包含一些布尔值和字符串。我希望这个模型返回一个HttpResponseMessage。目前我是这样做的:

代码语言:javascript
复制
string JSON = JsonConvert.SerializeObject(Data);
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, JSON);
return response;

这将产生以下JSON输出"{\"\"}"。但我需要的是{""}。但是,如果我只在HttpResponseMessage之前显示JSON,就像{""}一样,我似乎找不到是什么原因导致输出格式发生变化。有人知道这是什么原因以及如何解决这个问题吗?在我看来,JSON被“串行化”了,但我不知道为什么。

我正在使用NewtonSoft。

EN

回答 1

Stack Overflow用户

发布于 2018-11-17 05:55:28

之所以会发生这种情况,是因为Web API框架具有内置的序列化,而您是在此基础上手动序列化数据的。这种双序列化会产生您在响应JSON中看到的额外的反斜杠和引号。

要修复代码,请删除对SerializeObject的调用,并将Data对象直接传递给Request.CreateResponse,如下所示:

代码语言:javascript
复制
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, Data);
return response;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53337499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档