public class Messages
{
/// <summary>
/// 返回包含是否成功以及消息字符结果
/// </summary>
/// <param name="success">是否成功(True-成功,False-失败)</param>
/// <param name="msg">消息字符</param>
public Messages(bool success, string msg)
{
this.Success = success;
this.Msg = msg;
}
/// <summary>
/// 是否成功,成功返回true,否则false
/// </summary>
public bool Success { get; set; }
/// <summary>
/// 消息
/// </summary>
public string Msg { get; set; }
}
 public class MessagesCode : Messages
{
/// <summary>
/// 返回包含是否成功、消息字符以及编码结果
/// </summary>
/// <param name="success">是否成功(True-成功,False-失败)</param>
/// <param name="msg">消息字符</param>
/// <param name="code">编码代号(如:101-登录无效)</param>
public MessagesCode(bool success, string msg, int code) : base(success, msg)
{
this.Code = code;
}
/// <summary>
/// 编码
/// </summary>
public int Code { get; set; }
}
 public class MessagesData<T> : Messages
{
/// <summary>
/// 返回包括是否成功、消息字符以及对象数据结果
/// </summary>
/// <param name="success">是否成功(True-成功,False-失败)</param>
/// <param name="msg">消息字符</param>
public MessagesData(bool success, string msg) : base(success, msg)
{
this.Data = default(T);
}
/// <summary>
/// 数据对象(如LIST、Model)
/// </summary>
public T Data { get; set; }
}
    public class MessagesDataCode<T> : MessagesCode
{
/// <summary>
/// 返回包括是否成功、消息字符、对象数据以及编码结果
/// </summary>
/// <param name="success"></param>
/// <param name="msg"></param>
/// <param name="code"></param>
public MessagesDataCode(bool success, string msg, int code) : base(success, msg, code)
{
this.Data = default(T);
}
/// <summary>
///数据
/// </summary>
public T Data { get; set; }
}

在用MVC做网站开发时,用Ajax请求控制器时,返回的json对象中有两个参数即可,一个是Success,另一个是 Msg.

给App写接口时,用WebApi时,返回时视情况而定了,比如发送验证码时,需要有Code,Msg(发觉Success没有太大作用,加上也没事,这里不需要返回数据),在返回列表和详情时,就需要返回Code,Data,Msg,Success,

Success代表当前请求的目的是否成功。

在做MVC和WebApi写返回数据时,可以这样定义的更多相关文章

  1. springboot 接口返回数据时 net.sf.json.JSONNull["empty"]) 异常

    @ResetController返回数据时出现异常 Could not write JSON: Object is null; nested exception is com.fasterxml.ja ...

  2. .net asp mvc 如何从后端返回数据对象

    今天在做项目时,有一个需求:获取从控制器返回的数组对象,方法如下 public ActionResult GetAllFiles() { string dir = Server.MapPath(&qu ...

  3. c# 【MVC】WebApi设置返回Json

    public static HttpResponseMessage toJson(Object obj) { String str; if (obj is String || obj is Char) ...

  4. ajax返回数据时,如何将javascript值(通常为对象或数组)转为json字符串

    ajax获取值时,返回的数据为空时 alert后出现 [ ]; 用if语句判断时不为空,此时如何判断返回的数据是否为空.可将返回的值转化为json字符串. JSON.stringify() 方法用于将 ...

  5. json返回数据时提示字符串超出长度

    JavaScriptSerializer json = new JavaScriptSerializer(); json.MaxJsonLength = Int32.MaxValue; return ...

  6. struts通过Ajax返回数据时,例如对象类型,没有执行Ajax的回调函数

    <result type="json"  name="success">                 <param name=" ...

  7. 浅谈WebService返回数据效率对比

    原文链接 http://www.dotnetgeek.cn/xuexiwebservice1.html 一.什么是WebService: 简单通俗来说,就是企业之间.网站之间通过Internet来访问 ...

  8. Netty中如何写大型数据

    因为网络饱和的可能性,如何在异步框架中高效地写大块的数据是一个特殊的问题.由于写操作是非阻塞的,所以即使没有写出所有的数据,写操作也会在完成时返回并通知ChannelFuture.当这种情况发生时,如 ...

  9. 【Android】Intent的使用-返回数据给上一个活动

    第一个Activity  A启动另外一个Activity B,B返回数据给A ============================================================= ...

随机推荐

  1. openssl rsa java 大于117的长字符串加密

    package org.yood.rsa.util; import org.bouncycastle.asn1.ASN1Sequence; import org.bouncycastle.asn1.p ...

  2. 用PHP判断是否闰年(正则匹配法)

    <?php /** * PHP判断是否闰年 */ $year="2004-02-29"; $pattern='/(([0-9]{3}[1-9]|[0-9]{2}[1-9][0 ...

  3. Homestead的安装配置

    laravel学院教程 : http://laravelacademy.org/post/7658.html 参考博文:https://blog.csdn.net/xyxjn/article/deta ...

  4. Dart 创建Map

    Map的常用操作 1. [] , length   获取值和长度 2. isEmpty (),isNoEmpty () 是否为空 3.Keys ,values  获取所有的键 和值 4. contai ...

  5. 多线程系列之自己实现一个 lock 锁

    我们面试中经常会被问到多线程相关知识,这一块内容往浅了说大家都会,但是一问到底层实现原理,我们往往就一脸懵逼. 这段时间准备好好学习多线程,接下来会写一系列关于多线程的知识. 我们首先要了解线程,百度 ...

  6. 03MYSQL数据库

    mySQL 数据库 储存数据,属于中小型数据库   默认端口号 3306  密码root sql是一门编程语言 结构化查询语言  是强类型语言(定义变量时要指定变量类型) 字符串有两种类型:  定长: ...

  7. 1.继承(extends)、超类(superClass)、子类(subClass)

    注意:继承主要使用的is-a关系 在子类中用一个新的方法来覆盖超类中的方法(override),需要注意的是如果子类之中的方法或者域  被覆盖时,仍然想访问superClass中的方法和域,此时必须使 ...

  8. Python项目依赖并生成requirements.txt

    一起开发项目的时候总是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,一般都叫做requirements.txt. 如果一个项目使用时virtualenv环境,还好办 pip ...

  9. L1-046 整除光棍

    这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1.11.111.1111等.传说任何一个光棍都能被一个不以5结尾的奇数整除.比如,111111就可以被13整除. 现在,你的程序 ...

  10. HttpClient设置连接超时时间

    https://www.cnblogs.com/winner-0715/p/7087591.html 使用HttpClient,一般都需要设置连接超时时间和获取数据超时时间.这两个参数很重要,目的是为 ...