Example #1
0
        public QueryByMoreResponse <TDto> Gets(QueryByMoreRequest request, ReposityEntity re)
        {
            QueryByMoreResponse <TDto> result = new QueryByMoreResponse <TDto>();

            result.TotalRowCount = this.GetCount(request, re);

            string            sql       = Common.GetSqlPlusSort(request, re.Items[ReposityEntity.FalgQueryMoreEntity]);
            IList <SqlParams> sqlparams = Common.GetSqlParams(request);

            if (!request.IsPaging)
            {
                result.Rows = SQLHelper.Gets <TDto>(SQLHelper.ExecuteIDataReader(re.OwnerService, sql, sqlparams));
            }
            else
            {
                if (!request.IsCachePage)
                {
                    result.Rows = SQLHelper.Gets <TDto>(SQLHelper.ExecuteIDataReader(re.OwnerService, sql, sqlparams),
                                                        request.PageIndex,
                                                        request.PageSize);
                }
                else
                {
                    result.Rows = SQLHelper.Gets <TDto>(SQLHelper.ExecuteIDataReader(re.OwnerService, sql, sqlparams),
                                                        request.PageIndex,
                                                        request.PageSize,
                                                        request.CahcePageCount);
                }
            }
            return(result);
        }
        public int GetCount(QueryBySingleRequest request, ReposityEntity re)
        {
            string            sql       = Common.GetSqlPlusSort(request, re.Items[ReposityEntity.FalgQueryCountEntity]);
            IList <SqlParams> sqlparams = Common.GetSqlParams(request);
            object            obj       = SQLHelper.ExecuteScalar(re.OwnerService, sql, sqlparams);

            return(int.Parse(obj.ToString()));
        }
        public QueryBySingleResponse <TDto> Get(QueryBySingleRequest request, ReposityEntity re)
        {
            string                       sql       = Common.GetSqlPlusSort(request, re.Items[ReposityEntity.FalgQuerySingleEntity]);
            IList <SqlParams>            sqlparams = Common.GetSqlParams(request);
            QueryBySingleResponse <TDto> result    = new QueryBySingleResponse <TDto>()
            {
                Row = SQLHelper.Get <TDto>(SQLHelper.ExecuteIDataReader(re.OwnerService, sql, sqlparams))
            };

            return(result);
        }
        public RepositoryResponse Save(RepositoryRequest <TKey, TEntity> request, ReposityEntity re)
        {
            RepositoryResponse result = new RepositoryResponse();

            int cnt     = 0;
            int failcnt = 0;

            foreach (var e in request.CreateEntities)
            {
                try
                {
                    cnt += SQLHelper.ExecuteNonQuery(re.OwnerService, re.CreateEntity, e.GetSQLParams());
                }
                catch (Exception ex)
                {
                    failcnt++;
                    result.CreateMessage.Add(e.GetKey().ToString(), ex.Message);
                }
            }

            foreach (var e in request.UpdateEntities)
            {
                try
                {
                    cnt += SQLHelper.ExecuteNonQuery(re.OwnerService, re.UpdateEntity, e.GetSQLParams());
                }
                catch (Exception ex)
                {
                    failcnt++;
                    result.UpdateMessage.Add(e.GetKey().ToString(), ex.Message);
                }
            }

            foreach (var e in request.RemoveEntities)
            {
                try
                {
                    cnt += SQLHelper.ExecuteNonQuery(re.OwnerService, re.RemoveEntity, e.GetSQLParams());
                }
                catch (Exception ex)
                {
                    failcnt++;
                    result.RemoveMessage.Add(e.ToString(), ex.Message);
                }
            }

            result.ResultState = failcnt == 0;
            return(result);
        }
        public CommandResponse Execute(CommandRequest request, ReposityEntity re, string itemKey = null)
        {
            if (string.IsNullOrWhiteSpace(itemKey))
            {
                itemKey = ReposityEntity.FalgCommandEntity;
            }
            string            sql       = re.Items[itemKey];
            IList <SqlParams> sqlparams = Common.GetSqlParams(request);
            CommandResponse   response  = new CommandResponse();

            if (request.TrueScalar_FalseIntByResult)
            {
                response.ResultValue = SQLHelper.ExecuteScalar(re.OwnerService, sql, sqlparams);
            }
            else
            {
                response.ResultValue = SQLHelper.ExecuteNonQuery(re.OwnerService, sql, sqlparams);
            }
            return(response);
        }