public CustomerCollectionResponse Fetch(CustomerQueryCollectionRequest request) { base.FixupLimitAndPagingOnRequest(request); var totalItemCount = 0; var sortExpression = RepositoryHelper.ConvertStringToSortExpression(EntityType, request.Sort); var includeFields = RepositoryHelper.ConvertStringToExcludedIncludedFields(EntityType, request.Select); var prefetchPath = RepositoryHelper.ConvertStringToPrefetchPath(EntityType, request.Include, request.Select); var predicateBucket = RepositoryHelper.ConvertStringToRelationPredicateBucket(EntityType, request.Filter, request.Relations); EntityCollection <CustomerEntity> entities; using (var adapter = DataAccessAdapterFactory.NewDataAccessAdapter()) { OnBeforeFetchCustomerQueryCollectionRequest(adapter, request, sortExpression, includeFields, prefetchPath, predicateBucket, request.PageNumber, request.PageSize, request.Limit); entities = base.Fetch(adapter, sortExpression, includeFields, prefetchPath, predicateBucket, request.PageNumber, request.PageSize, request.Limit, out totalItemCount); OnAfterFetchCustomerQueryCollectionRequest(adapter, request, entities, sortExpression, includeFields, prefetchPath, predicateBucket, request.PageNumber, request.PageSize, request.Limit, totalItemCount); } var response = new CustomerCollectionResponse(entities.ToDtoCollection(), request.PageNumber, request.PageSize, totalItemCount); return(response); }
/// <summary>Queries 'Customer' entities using sorting, filtering, eager-loading, paging and more.</summary> public CustomerCollectionResponse Get(CustomerQueryCollectionRequest request) { OnBeforeGetCustomerQueryCollectionRequest(request); var output = Repository.Fetch(request); OnAfterGetCustomerQueryCollectionRequest(request, output); return(output); }
partial void OnAfterFetchCustomerQueryCollectionRequest(IDataAccessAdapter adapter, CustomerQueryCollectionRequest request, EntityCollection <CustomerEntity> entities, SortExpression sortExpression, ExcludeIncludeFieldsList excludedIncludedFields, IPrefetchPath2 prefetchPath, IRelationPredicateBucket predicateBucket, int pageNumber, int pageSize, int limit, int totalItemCount);
partial void OnBeforeFetchCustomerQueryCollectionRequest(IDataAccessAdapter adapter, CustomerQueryCollectionRequest request, SortExpression sortExpression, ExcludeIncludeFieldsList excludedIncludedFields, IPrefetchPath2 prefetchPath, IRelationPredicateBucket predicateBucket, int pageNumber, int pageSize, int limit);
partial void OnAfterGetCustomerQueryCollectionRequest(CustomerQueryCollectionRequest request, CustomerCollectionResponse response);
partial void OnBeforeGetCustomerQueryCollectionRequest(CustomerQueryCollectionRequest request);