获得点击率 - GetHits2HitReturnClass

2017-05-03 21:44:15  访问(1701) 赞(0) 踩(0)


        /// <summary>
        /// 获得点击率 - GetHits2HitReturnClass
        /// </summary>
        /// <param name="oId">关键字</param>  
        /// <param name="xdbHelper">数据库链接串</param>
        /// <returns></returns>
        public HitReturnClass GetHits2HitReturnClass
            (
                object oId, 
                DBHelper xdbHelper
            )
        {
            HitReturnClass theResult
                = 
                new HitReturnClass();


            bool bIsCreate = true;

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

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

                BaseEntity entity = CreateBaseEntity();

                string dataColumnNameHits = "Hits";
                string dataColumnNameHitTime = "HitTime";
                string dataColumnNameHitIp = "HitIp";
                string dataColumnNameHitIpAddress = "HitIpAddress";
                bool hadHitTime = false;
                bool hadHitIp = false;
                bool hadHitIpAddress = false;

                IQueryDriver iq = entity;
                ISelectDriver iselect = entity;

                iq.AddIQueryItemWithPrimaryKey(oId);

                iselect.AddISelectItemWithEntityFieldInfoName
                    (
                        dataColumnNameHits
                    );

                if (entity.IsExistEntityFieldInfo(dataColumnNameHitTime))
                {
                    iselect.AddISelectItemWithEntityFieldInfoName(dataColumnNameHitTime);
                    hadHitTime = true;

                }

                if (entity.IsExistEntityFieldInfo(dataColumnNameHitIp))
                {
                    iselect.AddISelectItemWithEntityFieldInfoName
                        (dataColumnNameHitIp);

                    hadHitIp = true;
                }

                if (entity.IsExistEntityFieldInfo(dataColumnNameHitIpAddress))
                {
                    iselect.AddISelectItemWithEntityFieldInfoName
                        (dataColumnNameHitIpAddress);

                    hadHitIpAddress = true;
                }

                DataRow dr = _GetDataRow(entity, xdbHelper);

                if (dr == null)
                {
                    if (bIsCreate)
                        xdbHelper.EndDBHelper();

                    return theResult;
                }

                string str = dr[dataColumnNameHits].ToString();

                if (str == null || str.Length == 0)
                    theResult.Hits = 0;
                else
                    theResult.Hits = int.Parse(str);

                if (hadHitTime)
                {
                    if (dr[dataColumnNameHitTime] != DBNull.Value
                        &&
                        dr[dataColumnNameHitTime].ToString().Length > 0)
                    {
                        theResult.HitTime = DateTime.Parse(dr[dataColumnNameHitTime].ToString());
                    }
                }

                if (hadHitIp)
                {
                    theResult.HitIp = dr[dataColumnNameHitIp].ToString();
                }

                if (hadHitIpAddress)
                {
                    theResult.HitIpAddress = dr[dataColumnNameHitIpAddress].ToString();
                }


                if (bIsCreate)
                    xdbHelper.EndDBHelper();

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

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

            return theResult;

        }


标签:获得点击率 - GetHits2HitReturnClass 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

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