ASP.NET WEB API 返回JSON 出现2个双引号问题
来源:互联网 发布:ubuntu deb 依赖关系 编辑:程序博客网 时间:2024/06/08 04:04
在使用ASP.NET WEB API时,我想在某个方法返回JSON格式的数据,于是首先想到的就是返回JSON字符串,如:"{\"result\":\"true\"}"
方法如下
/// <summary> /// 返回JSON数据 /// </summary> /// <returns></returns> public string GetAllJson() { //获取数据对象 MsgTemplate result = new msgbll().GetMsgTemplates(""); string jsonstr = JsonConvert.SerializeObject(result); return jsonstr;}
其实在ASP.NET WEB API中采用返回string来构建JSON是不可取的,如果你直接 return 序列化的字符串; 那么在浏览器中返回的结果是会被转义的,变成了 "\"{\\\"A\\\":\\\"a\\\",\\\"B\\\":\\\"b\\\"}\"" 也就是说,前后多了两个双引号,中间的转义字符也被转义了。如果拿这个格式去构建JSON就会报错,如我在Win From中构造JSON就出错了:
这就需要让ASP.NET WEB API返回正确的格式:"{\"result\":\"true\"}"保持到接收到不会被框架的东西给更改,需要返回HttpResponseMessage 对象,具体代码如下:、
/// <summary> /// 返回JSON数据 /// </summary> /// <returns></returns> public HttpResponseMessage GetAllJson() { //获取数据对象 MsgTemplate result = new msgbll().GetMsgTemplates(""); string jsonstr = JsonConvert.SerializeObject(result); var resp = new HttpResponseMessage { Content = new StringContent(jsonstr, System.Text.Encoding.UTF8, "application/json") }; return resp; }
1 0
- ASP.NET WEB API 返回JSON 出现2个双引号问题
- ASP.NET WEB API 返回JSON 出现2个双引号问题
- .net Web Api 返回json字符串出现双引号
- ASP.NET Web API 配置返回的json字段的格式以及Action返回HttpResponseMessage类型
- asp.net web API 的调用返回Json值 POST方式请求
- ASP.NET Web API 2个步骤启用 Help 说明
- Asp.Net Web API 2第十三课——ASP.NET Web API中的JSON和XML序列化
- asp.net web api 解决ajax跨站点post请求提交 json 数据问题
- asp.net web api 解决ajax跨站点post请求提交 json 数据问题
- .net Rest Web Api Controller 返回JSON格式大小写问题解决.
- 【ASP.NET Web API教程】6.2 ASP.NET Web API中的JSON和XML序列化
- js添加json出现key双引号问题
- web api返回json数据
- Manual JSON serialization from DataReader in ASP.NET Web API
- asp返回json串:string类型严格使用双引号包含
- asp.net web api
- ASP.NET Web API
- asp.net web api
- SQL游标的使用
- C++中的main函数
- 4-1、Spark简介
- Ajax
- docker
- ASP.NET WEB API 返回JSON 出现2个双引号问题
- JavaScript进阶之路——认识和使用Promise,重构你的Js代码
- QML动画之PropertyAnimation(属性动画)
- Python缓存机制介绍
- Shadow mapping
- 面向对象与面向过程的区别
- 单链表创建
- 多线程(三)
- 【杭电】[3790]最短路径问题