public void List(ListArgs args) { CodeProviderBase provider = null; switch (args.Source) { case ListSources.Religions: provider = ReligionCodeProvider.Instance; break; case ListSources.Insurances: provider = InsuranceCodeProvider.Instance; break; case ListSources.CountryCodes: provider = CountryCodeProvider.Instance; break; case ListSources.Postcode_City: provider = Postcode_CityProvider.Instance; break; default: HandleFailure($"Source '{args.Source}' not implemented."); return; } foreach (var line in provider?.GetCSV()) { Console.WriteLine(line); } }
protected override bool IsValid(PropertyValidatorContext context) { var code = context.PropertyValue as string; if (string.IsNullOrEmpty(code)) { return(true); } var provider = CodeProviderBase.GetInstance <T>(); return(provider.IsValid(code)); }