获得数据集 List-BaseModel - ListBaseModel

2017-06-28 11:44:08  访问(1343) 赞(0) 踩(0)

_ListBaseModel

        #region 获得 BaseModel的列表

        /// <summary>
        /// 获得 BaseModel的列表
        /// </summary>
        /// <param name="entity">操作实体</param>
        /// <param name="xdbHelper">数据库链接串</param>
        /// <returns></returns>
        protected List<BaseModel> _ListBaseModel(BaseEntity entity, DBHelper xdbHelper)
        {
            List<IDataParameter> theList = new List<IDataParameter>();


            string SQL = BuildSQLSlowXCoreFunctions.GetSqlList
                (
                    "",
                    xdbHelper.GetEmDataBaseHelper(),
                    xdbHelper.GetDataBaseVersion(),
                    entity,
                    theList
                );

            DataSet ds = _ExecuteDataSet
                (
                    SlowX.Core.Enums.ClearCache.EmClearCache.不清空, 
                    CommandType.Text, 
                    SQL, 
                    theList, 
                    xdbHelper
                );

            // 清空和释放数据 //
            int iCount = theList.Count;

            for (int i = 0; i < iCount; ++i)
            {
                theList[i] = null;
            }

            theList = null;

            List<BaseModel> theResult = new List<BaseModel>();

            if (ds == null)
                return theResult;

            DataTable dt = ds.Tables[0];

            iCount = dt.Rows.Count;

            if (iCount == 0)
                return theResult;

            for (int i = 0; i < iCount; ++i)
            {
                // 如果有连表字段,忽略 //
                theResult.Add(CreateBaseModel(dt.Rows[i], false, xdbHelper));
            }

            return theResult;
        }

        #endregion 获得 BaseModel的列表

ListBaseModel

        #region ListBaseModel 获得数据集 +

        /// <summary>
        /// 获得数据集 List-BaseModel - ListBaseModel +
        /// </summary>
        /// <param name="entity">操作实体</param>
        /// <param name="xdbHelper">数据库链接串</param>
        /// <returns></returns>
        public List<BaseModel> ListBaseModel
            (
                BaseEntity entity, 
                DBHelper xdbHelper
            )
        {
            List<BaseModel> theResult = null;

            bool bIsCreate = true;

            if (xdbHelper == null)
            {
                xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
            }
            else
            {
                // 没有打开链接 //
                bIsCreate = xdbHelper.IsNotOpen();
            }

            try
            {
                if (bIsCreate)
                    xdbHelper.OpenDBHelper();

                theResult = _ListBaseModel(entity, xdbHelper);

                if (bIsCreate)
                    xdbHelper.EndDBHelper();

            }
            catch (Exception err)
            {
                if (bIsCreate)
                    xdbHelper.TranDBHelper();

                throw err;
            }
            finally
            {
                if (bIsCreate)
                    xdbHelper.FinallyDBHelper();
            }

            return theResult;
        }

        #endregion ListBaseModel 获得数据集


上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)
 
  ┈全部┈  
 
(显示默认分类)