Exemplo n.º 1
0
 public CustomRoute GetCustomRoute(PredefinedPage predefinedPage, int contentId)
 {
     return(Entities
            .FirstOrDefault(x => x.ContentId == contentId &&
                            x.PredefinedPage == predefinedPage &&
                            x.HttpStatusCode == HttpStatusCode.OK));
 }
Exemplo n.º 2
0
        private bool IsRouteUrlTheSame(string url, int contentId, PredefinedPage pageType)
        {
            if (contentId == 0)
            {
                return(false);
            }

            var existingRouteFromSameType = Entities.FirstOrDefault(x =>
                                                                    x.Url == url && x.ContentId == contentId &&
                                                                    x.PredefinedPage == pageType && x.HttpStatusCode == HttpStatusCode.OK);

            return(existingRouteFromSameType != null);
        }
Exemplo n.º 3
0
        public TCulturedEntityParams Map(TEntity entity, PredefinedPage predefinedPage = PredefinedPage.None)
        {
            var culturedEntity = CulturedEntities.FirstOrDefault(x =>
                                                                 x.CultureId == CultureHelper.CurrentCulture.Id &&
                                                                 x.BaseEntityId == entity.Id);


            var configThree = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <TEntity, TCulturedEntityParams>();
            });
            var mapperThree = configThree.CreateMapper();
            // ReSharper disable once RedundantAssignment
            var entityParams = mapperThree.Map <TEntity, TCulturedEntityParams>(entity);

            var configTwo = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <TCulturedEntity, TCulturedEntityParams>()
                .ForMember(src => src.Id, dest => dest.UseValue(entity.Id))
                .ForMember(src => src.Status, dest => dest.UseValue(entity.Status));
            });

            var mapperTwo = configTwo.CreateMapper();

            entityParams = mapperTwo.Map(culturedEntity, entityParams);

            if (entityParams is IHasCustomRoute)
            {
                var customRouteService = DependencyResolver.Current.GetService <ICustomRouteService>();
                var customRoute        = customRouteService.GetCustomRoute(predefinedPage, culturedEntity.Id);

                var config = new MapperConfiguration(cfg =>
                {
                    cfg.CreateMap <CustomRoute, TCulturedEntityParams>()
                    .ForMember(src => src.Id, dest => dest.UseValue(entity.Id));
                });
                var mapper = config.CreateMapper();
                entityParams = mapper.Map(customRoute, entityParams);
            }

            entityParams.BaseEntityId = entity.Id;
            entityParams.Id           = (culturedEntity?.Id).GetValueOrDefault();

            return(entityParams);
        }