码迷,mamicode.com
首页 > 其他好文 > 详细

将DataTable转换成list

时间:2014-12-06 18:18:09      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:将datatable转换成list

将DataTable转换成list 及数据分页。

<1>

        /// <summary>
        /// 酒店评论列表-分页
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="pageIndex">当前页</param>
        /// <returns></returns>
        public static List<CommentInfo> GetHotelCommentList(int userId, int pageIndex, out int pageCount)
        {
            var list = new List<CommentInfo>();
            pageCount = 0;
            try
            {
                //查询酒店ID,名字,图片,用户ID,用户评论
                string sql = string.Format( @"select hotels.hid,hotels.hotelName,hotels.images,hotelorder.UserID,user_HotelComment.comment from hotels with(nolock) join hotelorder with(nolock) join user_HotelComment 
	 on hotelorder.UserID=user_HotelComment.userID on hotels.hid=hotelorder.HotelID where hotelorder.UserID={0}", userId);
                DataTable dt = SQLHelper.Get_DataTable(sql, SQLHelper.GetCon(), null);

                if (dt != null && dt.Rows.Count > 0)
                {
                 
                    list = (from p in dt.AsEnumerable()  //这个list是查出全部的用户评论
                            select new CommentInfo
                            {
                                Id = p.Field<int>("hid"), //p.Filed<int>("Id") 其实就是获取DataRow中ID列。即:row["ID"]
                                HotelImages = p.Field<string>("images"),
                                HotelName = p.Field<string>("hotelName"),
                                Comment = p.Field<string>("comment")
                            }).ToList(); //将这个集合转换成list

                    int pageSize = 10;
                    pageCount = list.Count % pageSize == 0 ? list.Count / pageSize : (list.Count / pageSize) + 1;//获取总页数

                    //这个list 就是取到10条数据
                    list = list.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList();
                    

                }

            }
            catch (Exception ex)
            {
                // write log here
            }
            return list;


        }


将DataTable转换成list

标签:将datatable转换成list

原文地址:http://blog.csdn.net/fanbin168/article/details/41777153

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!