MVC4.0 WebApi如何自定义返回数据类型

1.客户端可以通过HTTP Accept消息头来通知服务器客户端想要什么样的MIME类型数据,例如:application/json则代表告诉服务器想要的是Json数据

2.服务器端撇开客户端的请求类型,自己来定义返回数据类型(封装一个Object的扩展方法)

    static class ApiExtensioins
    {
        public static HttpResponseMessage ToJson(this Object obj)
        {
            string str;

            if (obj is String || obj is Char)
            {
                str = obj.ToString();
            }
            else
            {
                str = obj.ToJsonByJsonNet();
            }

            return new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
        } 
    }

        [HttpGet]
        public object GetDetail(string id)
        {
            return new Student() { Sno = "001", Name = "张三丰", Age = 20 }.ToJson();
        }

 还有两种方式是在xml和json两种数据格式中选择一个,干掉一个,很暴力,可以根据自己的需求来选择使用方法

 

posted @ 2015-10-26 15:37  荒古禁地  阅读(383)  评论(0编辑  收藏  举报