.Net Core API或者MVC專用控制器層返回類

using System.Collections.Generic;
namespace SCsc_CoreOrMVC.Model
{
    /// <summary>
    /// 基礎返回類
    /// </summary>
    public class ContrResModel
    {
        /// <summary>
        /// 基本構造函數
        /// </summary>
        public ContrResModel()
        {

        }

        /// <summary>
        /// 基本構造函數
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="code"></param>
        public ContrResModel(string msg, int code)
        {
            this.Message = msg;
            this.Code = code;
        }

        /// <summary>
        /// 返回消息
        /// </summary>
        //[JsonProperty("message")]//起別名
        public string Message { set; get; }

        /// <summary>
        /// 狀態碼
        /// </summary>

        public int Code { set; get; }
    }

    /// <summary>
    /// 基於實體返回類
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public class ContrResModel<T> : ContrResModel
    {
        /// <summary>
        /// 基本構造函數
        /// </summary>
        public ContrResModel()
        {
        }

        /// <summary>
        /// 基本構造函數
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="code"></param>
        public ContrResModel(string msg, int code)
        {
            this.Message = msg;
            this.Code = code;
        }

        /// <summary>
        /// 數據
        /// </summary>
        public T Data { set; get; }
    }

    /// <summary>
    /// 基於分頁返回列表類
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public class ResultPageModel<T> : ContrResModel
    {

        /// <summary>
        /// 基本構造函數
        /// </summary>
        public ResultPageModel()
        {

        }
        /// <summary>
        /// 基本構造函數
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="code"></param>
        public ResultPageModel(string msg, int code)
        {
            this.Message = msg;
            this.Code = code;
        }

        /// <summary>
        /// 數據
        /// </summary>
        public List<T> Data { set; get; }

        /// <summary>
        /// 總條數
        /// </summary>
        public int Count { set; get; }
    }

    /// <summary>
    /// 基於分頁返回類-可能會
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public class ResultPageExtraModel<T> : ResultPageModel<T>
    {
        /// <summary>
        /// 基本構造函數
        /// </summary>
        public ResultPageExtraModel()
        {

        }

        /// <summary>
        /// 額外附帶參數-基礎定義
        /// </summary>
        public Extra ExtraModel { get; set; }
    }

    /// <summary>
    /// 額外附帶參數
    /// </summary>
    public class Extra
    {
        /// <summary>
        /// 總數
        /// </summary>
        public int Count { get; set; }
    }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章