using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Web;
|
|
namespace IStation.Dto
|
{
|
/// <summary>
|
/// 执行返回的通用类,该类带有详细的业务数据,除了告诉用户此次调用是否成功与否,以及一个表示提示信息的字符串外,还带的详细的业务数据
|
/// </summary>
|
/// <typeparam name="T">业务数据的类型</typeparam>
|
public class ApiResult_List<T> : ApiResult
|
{
|
/// <summary>
|
/// 业务数据
|
/// </summary>
|
public List<T> Data { get; set; }
|
|
/// <summary>
|
/// 总条数
|
/// </summary>
|
public long Count { get; set; }
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public ApiResult_List() { }
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="type">状态标识</param>
|
/// <param name="message">提示信息</param>
|
public ApiResult_List(IEnumerable<T> data, IStation.Dto.ApiResultCode type, string message)
|
: base(type, message)
|
{
|
this.Data = data.ToList();
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="data"></param>
|
public ApiResult_List(IEnumerable<T> data)
|
: base(IStation.Dto.ApiResultCode.Success, "")
|
{
|
this.Data = data.ToList();
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
public ApiResult_List(T data)
|
: base(IStation.Dto.ApiResultCode.Success, "")
|
{
|
this.Data = new List<T> { data };
|
this.Count = 1;
|
}
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="message">提示信息</param>
|
public ApiResult_List(IEnumerable<T> data, string message)
|
{
|
this.Data = data.ToList();
|
this.Code = string.IsNullOrEmpty(message) ? IStation.Dto.ApiResultCode.Success : IStation.Dto.ApiResultCode.Error;
|
this.Message = message;
|
if (data == null || data.Count() == 0)
|
{
|
this.Count = 0;
|
}
|
else
|
{
|
this.Count = data.Count();
|
}
|
}
|
|
|
|
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="count">总长 可能和data的数据长度不一样</param>
|
public ApiResult_List(IEnumerable<T> data, int count)
|
{
|
this.Count = count;
|
if (data == null)
|
return;
|
this.Data = data.ToList();
|
}
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="data">业务数据</param>
|
/// <param name="count">总长 可能和data的数据长度不一样</param>
|
public ApiResult_List(IEnumerable<T> data, long count)
|
{
|
this.Count = count;
|
if (data == null)
|
return;
|
this.Data = data.ToList();
|
}
|
}
|
}
|