Ejemplo n.º 1
0
        /// <summary>
        /// 获取列表
        /// </summary>
        /// <param name="request"></param>
        /// <param name="queryable">查询表达式</param>
        /// <returns></returns>
        protected ActionResult GetListActionResultByQuerable(AdvanceDataSourceRequest request,
                                                             IQueryable <T> queryable = null)
        {
            var result = Service.GetListResult <TItemDto>(request, queryable);

            return(Json(Feedback.CreateList(result.Data, result.Total), JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 获取列表结果结果
        /// </summary>
        /// <typeparam name="TDto"></typeparam>
        /// <param name="request">请求参数</param>
        /// <param name="queryable">查询</param>
        /// <returns></returns>
        public virtual DataSourceResult GetListResult <TDto>(AdvanceDataSourceRequest request,
                                                             IQueryable <T> queryable = null)
            where TDto : class, IMapEntity
        {
            var result = GetListResult <T, TDto>(GetQuery(queryable), request);

            return(result);
        }
Ejemplo n.º 3
0
        public virtual DataSourceResult GetListResult <TEntity, TEntityDto>(IQueryable <TEntity> queryable,
                                                                            AdvanceDataSourceRequest request)
            where TEntityDto : class, IMapEntity
        {
            var result = queryable.ProjectTo <TEntityDto>().ToDataSourceResult(request);

            result.Data = ProcessListResult <TEntity, TEntityDto>((IEnumerable <TEntityDto>)result.Data);

            if (request.Fields.Count > 0)
            {
                var fieldsString = string.Join(",", request.Fields);
                result.Data = result.Data.AsQueryable().Select($"new ({fieldsString})");
            }

            return(result);
        }
Ejemplo n.º 4
0
 /// <summary>
 /// 获取列表
 /// </summary>
 /// <returns></returns>
 public virtual ActionResult List(AdvanceDataSourceRequest request)
 {
     return(GetListActionResultByQuerable(request));
 }