Exemple #1
0
        /// <summary>
        /// 查询一个实体类
        /// </summary>
        /// <returns></returns>
        internal T QueryEntity <T>(string sqlStr) where T : new()
        {
            if (CurrentOperate == OperateEnum.None)
            {
                _tradstr = sqlStr;
            }
            SqlPageParms(1);
            DbHelper.Parameters = Parameters;
            DataTable dt = DbHelper.ExeDataTable(sqlStr);

            if (dt != null)
            {
                Dictionary <string, PropertyInfo> pInfos = Sqlcom.MappingToProperty <T>(dt);
                foreach (DataRow dr in dt.Rows)
                {
                    if (dr == null)
                    {
                        return(default(T));
                    }
                    return(Sqlcom.GetFromReader <T>(dr, pInfos));
                }
            }
            return(default(T));
        }
Exemple #2
0
        /// <summary>
        /// 查询一个实体类
        /// </summary>
        /// <returns></returns>
        internal T QueryEntity <T>(string sqlStr) where T : new()
        {
            if (CurrentOperate == OperateEnum.None)
            {
                _tradstr = sqlStr;
            }
            SqlPageParms(1);
            DbHelper.Parameters = Parameters;
            DataTable dt = DbHelper.ExeDataTable(sqlStr);

            if (dt != null)
            {
                Dictionary <string, PropertyInfo> pInfos = Sqlcom.MappingToProperty <T>(dt);
                foreach (DataRow dr in dt.Rows)
                {
                    if (dr == null)
                    {
                        return(default(T));
                    }
                    if (CacheHelper.IsOpenCache)
                    {
                        string cachekey = string.Format("entity_{2}_{0}_key_{1}",
                                                        TbName,
                                                        Cachekeyvalue, _appindex);
                        if (!IsNeedCache)
                        {
                            CacheHelper.Remove(cachekey);
                            T entity = Sqlcom.GetFromReader <T>(dr, pInfos);
                            return(entity);
                        }
                        else
                        {
                            T entity = CacheHelper.Get <T>(cachekey);
                            if (entity == null)
                            {
                                entity = Sqlcom.GetFromReader <T>(dr, pInfos);
                                CacheHelper.Insert(cachekey, entity);
                            }
                            return(entity);
                        }
                    }
                    return(Sqlcom.GetFromReader <T>(dr, pInfos));
                }
            }
            return(default(T));
        }