protected override bool Compensate(Guid categoryId, IEnumerable <Guid> compensates) { var compensate = true; if (CategoryAssociationBindTriggers == null) { return(compensate); } var subscriberId = UserContext.Current.SubscriberId; var category = CategorySearchRepository.GetEntity(subscriberId, categoryId); if (category == null) { return(false); } var associations = AssociationSearchRepository.GetEntities(subscriberId, s => compensates.Contains(s.Id)); associations.ForEach(association => { CategoryAssociationBindTriggers.ToList().ForEach( trigger => { compensate &= trigger.Bound(category, association); } ); }); return(compensate); }
protected virtual CategoryEntity GetCategory(Guid categoryId) { return(CategorySearchRepository.GetEntity(UserContext.Current.SubscriberId, categoryId)); }