内容简介:我发现自己写过好几篇相关主题的文章:asp.net中如何返回JSON格式的数据、asp.net中如何返回JSON格式的数据。现在回过头来看看这些文章,五花八门。尽管如此,每次遇到要返回JSON,我仍然一脸茫然,需要翻出这些文章查阅一番。来个总结吧。一、
我发现自己写过好几篇相关主题的文章:asp.net中如何返回JSON格式的数据、asp.net中如何返回JSON格式的数据。现在回过头来看看这些文章,五花八门。尽管如此,每次遇到要返回JSON,我仍然一脸茫然,需要翻出这些文章查阅一番。
来个总结吧。
一、 asp.net web api
这是for api的,有别于mvc
using System.Web.Http;
using System.Web.Http.Results;
public class HyzController : ApiController
{
[HttpGet]
[Route("api/base/hyz/zxz")]
public JsonResult<List<Zxz>> GetZxz()
{
var data = new List<Zxz>()
{
new Zxz()
{
Id = 1,
Name = "广州",
Parent = "天河区",
SubNum = 9,
Subs = new List<Hyz>()
{
new Hyz()
{
Id = 2,
Name = "天园街"
},
new Hyz()
{
Id = 3,
Name = "棠下街"
}
}
}
};
return Json(data);
}
二、 asp.net web api中强制返回格式为JSON
asp.net web api 默认的结果传送方式是XML。但可以设置为JSON。方法为在WebApiConfig里加入一句:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API 路由
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));//改为JSON方式
}
}
三、 asp.net MVC
public ContentResult GetUser()
{
return new ContentResult {
ContentEncoding = Encoding.GetEncoding("utf-8")
,ContentType = "application/json"//<-----------------------------------
,Content = @"{
""code"" : ""0",
""desc"" : ""请求数据成功!",
""dataobj"" : [ {
""action"" : ""I",
""userCode"" : ""001",
""userName"" : ""张三""
}, {
""action"" : ""U",
""userCode"" : ""002",
""userName"" : ""李四""
} ]}"
};
}
返回类型用JsonResult也可以,但无法应用预先拼好的json字符串
参考文章: ASP.NET MVC 提供与访问 Web Api
四、不管是WEB API还是MVC,直接返回JSON对象
using Newtonsoft.Json;
[System.Web.Http.HttpGet]
public JObject GetTags(string account)
{
JObject jobj = new JObject();
//ViewTag是自定义类
IList<ViewTag> list = customViewService.GetTags(ProjectId,account);
jobj.Add("total", (JToken)list.Count());
jobj.Add("rows", JArray.FromObject(list));
return jobj;
}
参考文章:
服务器端将复合json对象传回前端以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Flask返回json格式数据
- Java 如何设计 API 接口,实现统一格式返回?
- SpringBoot入门系列(二)如何返回统一的数据格式
- 分布式之API接口返回格式如何优雅设计?
- Bee 1.4.7 发布,增强查询 DB 直接返回 Json 格式数据
- go-fastdfs v1.3.7 发布,增加上传返回格式 json2,增加视频教程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JAVA核心技术(卷1)
Cay S. Horstmann、Gary Cornell / 杜永萍、邝劲筠、叶乃文 / 机械工业出版社 / 2008-6 / 98.00元
《JAVA核心技术(卷1):基础知识(原书第8版)》是《Java核心技术》的最新版,《Java核心技术》出版以来一直畅销不衰,深受读者青睐,每个新版本都尽可能快地跟上Java开发工具箱发展的步伐,而且每一版都重新改写了的部分内容,以便适应Java的最新特性。本版也不例外,它反遇了Java SE6的新特性。全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理......一起来看看 《JAVA核心技术(卷1)》 这本书的介绍吧!