最近做C#的API接口开发,平时我们做接口时大部分都是拼接字符串的形式来返回对应的json格式,例如下面: 
[C#] 纯文本查看 复制代码 context.Response.Write(jsonback + "({\"status\":\"ok\",\"msg\":\"成功\""})"); 
这种拼接感觉很不方便,不便于扩展和维护修改,所以我想写一个通用的json返回实体类或许会方便些,所以就在开发的前期写了一个通用的类,在开发的过程中又不断的优化,感觉已经可以胜任一般的返回json的任务了。 
项目框架我大概搭建了一下,在global文件写了一个调用的例子,其他大家可以慢慢研究,有什么问题大家可以下面回复的,我看到了一定会答复滴。 
 
 
 
jsonmodel里面一个JsonHelper类封装了对象和json之间的转换可以直接调用里面的方法。 
JsonMsgRet这个类就是通用的返回json对象类。 
 
下面是JsonMsgRet这个类的使用方法。 
[C#] 纯文本查看 复制代码 protected void Application_BeginRequest(object sender, EventArgs e)
        {
            if (HttpContext.Current.Request.Path.Contains(".ashx"))
            {
                //统一在请求接口之前做签名验证检测
                JsonMsgRet<string> jsonRet = new JsonMsgRet<string>();//因为是T,可以根据实际需要传递你要返回的对象,可以是单个类,可以是list集合等。
                var msg = string.Empty;
                bool isVertify =false;//这里写你自己的签名验证逻辑
                if (!isVertify)
                {
                    jsonRet.Content = msg;
                    Context.Response.ContentType = "text/plain";
                    Context.Response.Write(JsonHelper.json(jsonRet));
                    Context.Response.End();
                }
            }
        } 
 
下面上源码:
 
AppApi.rar
(29.05 KB, 下载次数: 61)
 |