获得下一条BaseModel - GetBaseModelNext

2017-05-03 21:45:51  访问(1647) 赞(0) 踩(0)


        /// <summary>
        /// 获得下一条BaseModel - GetBaseModelNext
        /// </summary>
        /// <param name="oId">关键字值</param>
        /// <param name="configDataColumnName">配置字段名</param>
        /// <param name="configDataColumnValue">配置字段值</param>
        /// <param name="emWhereModelValue">where的条件</param>
        /// <param name="xdbHelper">数据库链接串</param>
        /// <returns></returns>
        public BaseModel GetBaseModelNext
            (
                object oId,
                string configDataColumnName,
                object configDataColumnValue,
                Core.Enums.WhereModel.EmWhereModel emWhereModelValue,
                DBHelper xdbHelper
            )
        {
            BaseModel theResult = null;

            bool bIsCreate = true;

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

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

                BaseEntity entity = this.CreateBaseEntity();

                IQueryDriver iq = entity;

                if (emWhereModelValue != Enums.WhereModel.EmWhereModel.无)
                    iq.InitIQueryItem(emWhereModelValue);

                EntityFieldInfo pkInfo = entity.GetIDEntityFieldInfo();

                iq.AddIQueryItemWithEntityFieldInfo
                    (
                        pkInfo,
                        Core.Enums.SqlLink.EmSqlLink.Greater,
                        oId
                    );

                if (configDataColumnName != null && configDataColumnName.Length > 0)
                {
                    iq.AddIQueryItemWithEntityFieldInfoName
                        (
                            configDataColumnName,
                            configDataColumnValue
                        );

                }

                entity.i_iorderByDriver.AddIOrderByItem
                    (
                        pkInfo,
                        Core.Enums.OrderBy.EmOrderBy.ASC
                    );

                theResult = GetBaseModel(entity, xdbHelper);

                if (bIsCreate)
                    xdbHelper.EndDBHelper();

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

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

            return theResult;
        }


标签:获得下一条BaseModel - GetBaseModelNext 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

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