Пример #1
0
        /// <summary>
        /// SQL分页
        /// </summary>
        /// <typeparam name="T">实体</typeparam>
        /// <param name="utilityPager">分页类</param>
        /// <param name="querysql">SQL语句</param>
        /// <returns></returns>
        public IList <T> PagerList <T>(UtilityPager utilityPager, string querysql) where T : class
        {
            if (utilityPager == null)
            {
                utilityPager = new UtilityPager();
            }
            var queryList = ICreateSQLQuery(querysql).AddEntity(typeof(T));

            if (!utilityPager.IsGetCount)
            {
                return(queryList.SetFirstResult(GetPageIndex(utilityPager))
                       .SetMaxResults(utilityPager.PageSize)
                       .List <T>());
            }
            int count = Convert.ToInt32(GetCustomSQLQueryUniqueResult <object>("select count(*) from (" + querysql + ") as countTable"));

            return(queryList.SetFirstResult(GetPageIndex(utilityPager, count))
                   .SetMaxResults(utilityPager.PageSize)
                   .List <T>());
        }
Пример #2
0
        ///// <summary>
        ///// 将连表查询出来的数据分装到实体
        ///// </summary>
        ///// <param name="ilist"></param>
        ///// <returns></returns>
        //static List<View_UserJoinRoleJoinDepartmen> ConvertToList(IList ilist)
        //{
        //    List<View_UserJoinRoleJoinDepartmen> list = new List<View_UserJoinRoleJoinDepartmen>();
        //    for (int i = 0; i < ilist.Count; i++)
        //    {
        //        View_UserJoinRoleJoinDepartmen obj = new View_UserJoinRoleJoinDepartmen();
        //        object[] objs = ilist[i] as object[];
        //        obj.UserName = Convert.ToString(objs[0]);
        //        obj.CityID = Convert.ToInt32(objs[1]);
        //        obj.FxtCompanyID = Convert.ToInt32(objs[2]);
        //        obj.RoleID = Convert.ToInt32(objs[3]);
        //        obj.RoleName = Convert.ToString(objs[4]);
        //        obj.RValid = Convert.ToInt32(objs[5]);
        //        obj.DepartmentID = null;
        //        if (objs[6] != null)
        //        {
        //            obj.DepartmentID = Convert.ToInt32(objs[6]);
        //        }
        //        obj.DepartmentName = Convert.ToString(objs[7]);
        //        obj.DValid = Convert.ToInt32(objs[8]);
        //        list.Add(obj);
        //    }
        //    return list;
        //}
        /// <summary>
        /// 查询View_DepartmentJoinRole信息
        /// </summary>
        /// <param name="whereSql"></param>
        /// <param name="utilityPager"></param>
        /// <param name="tblName">放于表后的别名</param>
        /// <param name="_db"></param>
        /// <returns></returns>
        static List <View_UserJoinRoleJoinDepartmen> GetList(string whereSql, List <NHParameter> parameters, UtilityPager utilityPager = null, string tblName = "tbl", DataBase _db = null)
        {
            DataBase db = new DataBase(_db);

            try
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("select *  from (").Append(ViewSql).Append(") as ").Append(tblName).Append(" ");
                if (!string.IsNullOrEmpty(whereSql))
                {
                    sb.Append(" where ").Append(whereSql);
                }
                IList <View_UserJoinRoleJoinDepartmen> list = new List <View_UserJoinRoleJoinDepartmen>();
                //IList ilist = null;
                if (utilityPager != null)
                {
                    list = db.DB.PagerList <View_UserJoinRoleJoinDepartmen>(utilityPager, sb.ToString(), parameters, isDTO: true).ToList();
                    //ilist = db.DB.GetCustomSQLQueryObjectList(utilityPager, sb.ToString(), parameters);
                }
                else
                {
                    list = db.DB.GetCustomSQLQueryList <View_UserJoinRoleJoinDepartmen>(sb.ToString(), parameters, isDTO: true).ToList();
                    //ilist = db.DB.GetCustomSQLQueryObjectList(sb.ToString(), parameters);
                }
                db.Close();
                //List<View_UserJoinRoleJoinDepartmen> list = ConvertToList(ilist);
                return(list as List <View_UserJoinRoleJoinDepartmen>);
            }
            catch (Exception ex)
            {
                db.Close();
                throw ex;
            }
        }
Пример #3
0
        /// <summary>
        /// 自定义条件检索对象信息
        /// </summary>
        /// <typeparam name="T">实体</typeparam>
        /// <param name="where">lambda表达式条件</param>
        /// <returns>集合</returns>
        public IQueryable <T> GetListCustom <T>(Expression <Func <T, bool> > where, UtilityPager utilityPager) where T : class
        {
            var query = Session.Query <T>().Where(where);

            return(query.Skip(GetPageIndex(utilityPager, query.Count <T>())).Take(utilityPager.PageSize));
        }