c#列表數據轉Json


PageHelper:

        /// <summary>
        /// 獲取數據列表並轉成json字符串
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="temp"></param>
        /// <returns></returns>
        public static HttpResponseMessage GetPageList<T>(IQueryable<T> temp)
        {
            var list = temp;
            int getCount = temp.Count();
            string str = JsonConvert.SerializeObject(new { total = getCount, rows = list }, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
            return result;
        }
        /// <summary>
        /// 獲取數據列表並轉成json字符串
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="temp"></param>
        /// <returns></returns>
        public static HttpResponseMessage GetPageList<T>(IEnumerable<T> temp)
        {
            var list = temp;
            int getCount = temp.Count();
            string str = JsonConvert.SerializeObject(new { total = getCount, rows = list }, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
            return result;
        }
        /// <summary>
        /// 獲取數據列表並轉成json字符串
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="temp"></param>
        /// <returns></returns>
        public static HttpResponseMessage GetPageList<T>(List<T> temp)
        {
            var list = temp;
            int getCount = temp.Count();
            string str = JsonConvert.SerializeObject(new { total = getCount, rows = list }, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
            return result;
        }

Controller:

 public HttpResponseMessage GetDataTypeInfoNoPaging()
        {
            var list = pBll.GetDataTypeInfo();
            return PageHelper.GetPageList(list);
        }
 public HttpResponseMessage GetEventTypeNoPaging()
        {
            var list = b_EventType.GetEventType();
            return PageHelper.GetPageList(list);
        }
 public HttpResponseMessage GetMenuTree()
        {
            List<VM_Menu> list = b_authority.GetMenuTree();
            return PageHelper.GetPageList(list);
        }

帶分頁:

        public static HttpResponseMessage GetPageList<T>(IQueryable<T> temp, int pageSize, int pageIndex)
        {
            var list = temp.Skip(pageSize * (pageIndex - 1)).Take(pageSize);
            int getCount = temp.Count();
            string str = JsonConvert.SerializeObject(new { total = getCount, rows = list }, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
            return result;
        }
        public static HttpResponseMessage GetPageList<T>(IEnumerable<T> temp, int pageSize, int pageIndex)
        {
            var list = temp.Skip(pageSize * (pageIndex - 1)).Take(pageSize);
            int getCount = temp.Count();
            string str = JsonConvert.SerializeObject(new { total = getCount, rows = list }, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"), "application/json") };
            return result;
        }
        //Controller調用
        public HttpResponseMessage GetAuthority(int pageSize = 5, int pageIndex = 1)
        {
            var list = b_authority.GetAuthority();
            return PageHelper.GetPageList(list, pageSize, pageIndex);
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM