/// <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); } }
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); }
/// <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); } }