asp.net webapi 返回json结果的方法

摘要:
第一种类型:publicstaticvoidRegister(HttpConfigurationconfig){//1.从GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear()中清除默认的xml格式器;//2.将默认值设置为返回JSON格式的数据GlobalConfiguration.Con

第一种:

        public static void Register(HttpConfiguration config) {

            //1、将默认的xml格式化程序清除
            GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();

            //2、设置默认返回json格式的数据
            GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(new QueryStringMapping("dataType","json","application/json"));            

            //3、如果设置http://xxx?dataType=xml,则返回xml格式的数据
            GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(new QueryStringMapping("dataType", "xml", "application/xml"));

            // Web API 配置和服务

            // Web API 路由
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

            config.Routes.MapHttpRoute(
               name: "DefaultApi2",
               routeTemplate: "api/{controller}/{action}/{id}",
               defaults: new { id = RouteParameter.Optional }
           );
        }
    }

Action的使用方式:

        [AcceptVerbs("GET", "POST")]        
        [Route("FetchList")]
        public Resultx FetchList() {
            return new Resultx { Code = 0, Message = "OK", Result = new { name="list",list=new List<string> { "1","2"} } };
        }

第二种:

        [AcceptVerbs("GET", "POST")]
        [Route("FetchList")]
        //使用IHttpActionResult接口,用JsonResult<>()来返回Json字符串
        public IHttpActionResult FetchList() {
            return Json(new { Code = 0, Message = "OK", Result = new { name = "list", list = new List<string> { "1", "2" } } });
        }

以上两种结果都能正常返回Json字符串:

{"Code":0,"Message":"OK","Result":{"name":"list","list":["1","2"]}}

  

免责声明:文章转载自《asp.net webapi 返回json结果的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Element中的Cascader 级联选择器高度不能正常显示如何解决2[转]QT子线程与主线程的信号槽通信-亲测可用!下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

前端测试Mock API工具——EoLinker API管理平台

之前开发一直在使用Production和QA环境,但是这两种环境下rest api 返回来的数据并不能保证各种极端的数据存在。 比如正常情况下服务器返回这样的json { "status": { "code": 0, "message": "It works!" }, "server": {...

net WebApi中使用swagger

net WebApi中使用swagger 我在WebApi中使用swagger的时候发现会出现很多问题,搜索很多地方都没找到完全解决问题的方法,后面自己解决了,希望对于遇到同样问题朋友有帮助。我将先一步一步的演示项目中解决swagger遇到问题及解决方法。   首先我们新建一个api项目 图1 (默认生成项目) 图2(运行首页)   图3(默认Api列...

Javassist/ASM 框架比较

Javassist: Javassist (Java编程助手)使操作Java字节码变得简单。它是一个用于编辑Java字节码的类库;跟其他类似的字节码编辑器不同的是,它使Java程序能够在运行时定义一个新类,并在JVM加载类文件时修改它。 Javassist提供了两种级别的API:源级别和字节码级别。如果用户使用源代码级API,他们可以不需要了解Jav...

【转】Android Drawable Resource学习(十一)、RotateDrawable

对另一个drawable资源,基于当前的level,进行旋转的drawable。 文件位置: res/drawable/filename.xml文件名即资源名 编译数据类型: 指向 RotateDrawable的指针。 资源引用: In Java: R.drawable.filenameIn XML: @[package:]drawable/filen...

【IDEA】IDEA中maven项目pom.xml依赖不生效解决

问题:   今天在web项目中需要引入poi相关jar包。查看之下才发现pom.xml中的依赖虽然已经下载到了本地仓库 repository,但是却没有加入到项目路径的 Extenal Libraries 中。 解决办法:   在google,百度之后并没有发现同样类型的问题,所以就只能自己摸索了,根本其他接近本问题的解决方法,发现IntelliJ中存在管...

Android的string-array数据源简单使用

在Android中,用string-array是一种简单的提取XML资源文件数据的方法。 例子如下: 把相应的数据放到values文件夹的arrays.xml文件里 <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="city"&...