Пример #1
0
        public object GetShapedCollection(PagedList <Skill> skills,
                                          ResourceParameters resourceParameters, MediaTypeHeaderValue parsedMediaType)
        {
            if (_paginationService.GetPrimaryMediaType(parsedMediaType) == SkillMediaTypes.PrimaryFullSkill)
            {
                return(GetFullShapedCollection(skills, resourceParameters, parsedMediaType));
            }

            return(GetCustomShapedCollection(skills, resourceParameters, parsedMediaType));
        }
Пример #2
0
        public IDictionary <string, object> GetShapedEntity(MediaTypeHeaderValue parsedMediaType,
                                                            Performance performance, string fields)
        {
            if (_paginationService.GetPrimaryMediaType(parsedMediaType) == MediaTypes.PrimaryFullPerformance)
            {
                var fullResourceToReturn = _mapper.Map <PerformanceFullDto>(performance)
                                           .ShapeData(fields) as IDictionary <string, object>;

                if (_paginationService.IncludeLinks(parsedMediaType))
                {
                    fullResourceToReturn.Add("links", _paginationService.CreateLinksForEntity(performance.Guid, fields));
                }

                return(fullResourceToReturn);
            }

            var friendlyResourceToReturn = _mapper.Map <PerformanceDto>(performance)
                                           .ShapeData(fields) as IDictionary <string, object>;

            if (_paginationService.IncludeLinks(parsedMediaType))
            {
                friendlyResourceToReturn.Add("links", _paginationService.CreateLinksForEntity(performance.Guid, fields));
            }

            return(friendlyResourceToReturn);
        }