Example #1
0
        /// <summary>
        /// Удаляет из цели правило выбора страны
        /// </summary>
        /// <param name="target">Цель геолокации</param>
        /// <param name="country">Двухсимвольный код страны</param>
        public void RemoveCountryFromTarget(Target target, string country)
        {
            CountryRule rule = CountryRuleRepository.FindByTargetAndCountry(target, country);

            if (rule != null)
            {
                CountryRuleRepository.Delete(rule);
            }
        }
Example #2
0
 public TargetService(IpGeoBaseContext dataContext)
 {
     DataContext = dataContext;
     TargetRepository = new TargetRepository(dataContext);
     CountryRuleRepository = new CountryRuleRepository(dataContext);
     AreaRuleRepository = new AreaRuleRepository(dataContext);
     AreaRepository = new AreaRepository(dataContext);
     RegionRuleRepository = new RegionRuleRepository(dataContext);
     RegionRepository = new RegionRepository(dataContext);
     LocationRuleRepository = new LocationRuleRepository(dataContext);
     LocationRepository = new LocationRepository(dataContext);
 }
Example #3
0
 public TargetService(IpGeoBaseContext dataContext)
 {
     DataContext            = dataContext;
     TargetRepository       = new TargetRepository(dataContext);
     CountryRuleRepository  = new CountryRuleRepository(dataContext);
     AreaRuleRepository     = new AreaRuleRepository(dataContext);
     AreaRepository         = new AreaRepository(dataContext);
     RegionRuleRepository   = new RegionRuleRepository(dataContext);
     RegionRepository       = new RegionRepository(dataContext);
     LocationRuleRepository = new LocationRuleRepository(dataContext);
     LocationRepository     = new LocationRepository(dataContext);
 }
Example #4
0
        /// <summary>
        /// Добавляет к цели правило выбора страны
        /// </summary>
        /// <param name="target">Цель геолокации</param>
        /// <param name="country">Двухсимвольный код страны</param>
        /// <param name="kind">Вид правила включения</param>
        public void AddCountryToTarget(Target target, string country, RuleKind kind)
        {
            CountryRule rule = CountryRuleRepository.FindByTargetAndCountry(target, country);

            if (rule == null)
            {
                rule = new CountryRule()
                {
                    TargetId = target.Id,
                    Country  = country,
                    Kind     = kind
                };

                CountryRuleRepository.Create(rule);
            }
            else if (rule.Kind != kind)
            {
                rule.Kind = kind;
                CountryRuleRepository.Save(rule);
            }
        }