在做MVC和WebApi写返回数据时,可以这样定义

时间:2023-03-08 21:56:02
在做MVC和WebApi写返回数据时,可以这样定义
    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代表当前请求的目的是否成功。