Ejemplo n.º 1
0
 public BusinessService(ICategoryRelationshipRepository catRRep, IProductRatingRepository prodRRep,
                        IReviewRepository reviewRep, IProductRepository prodRep, ICategoryRepository catRep, IUserProfileRepository userRep, IFilteringRepository filterRep, IFrontPageRepository frontRep)
 {
     _categoryRelationshipRepository = catRRep;
     _productRatingRepository        = prodRRep;
     _reviewRepository      = reviewRep;
     _productRepository     = prodRep;
     _categoryRepository    = catRep;
     _userProfileRepository = userRep;
     _filteringRepository   = filterRep;
     _frontPageRepository   = frontRep;
 }
Ejemplo n.º 2
0
        public static T IncludeFilters <T>(this T repository,
                                           params IRepositoryFilter[] repositoryFilters) where T : IReadRepository
        {
            IFilteringRepository <IReadRepository> filteringRepository =
                repository as IFilteringRepository <IReadRepository>;

            if (filteringRepository == null)
            {
                throw new ArgumentException(
                          $"Repository type {repository.GetType().FullName} does not implement IFilteringRepository<>");
            }

            return((T)filteringRepository.IncludeFilters(repositoryFilters));
        }
Ejemplo n.º 3
0
        public static T ExcludeFilters <T>(this T repository,
                                           params Type[] repositoryFilterTypes) where T : IReadRepository
        {
            IFilteringRepository <IReadRepository> filteringRepository =
                repository as IFilteringRepository <IReadRepository>;

            if (filteringRepository == null)
            {
                throw new ArgumentException(
                          $"Repository type {repository.GetType().FullName} does not implement IFilteringRepository<>");
            }

            var filters = repository.DefaultFilters.Where(x => repositoryFilterTypes.Any(y => y.IsInstanceOfType(x)));

            return((T)filteringRepository.ExcludeFilter(filters.ToArray()));
        }
Ejemplo n.º 4
0
 public FilteringDomainService(IFilteringRepository <TEntity, TFilterDefinition> repository)
     : base(repository)
 {
     this.Repository = repository;
 }