private static string GetCountryCode(Country country) { switch (country) { case Country.Russia: return("ru"); case Country.Belarus: return("by"); case Country.Ukraine: return("ua"); case Country.Kazakhstan: return("kz"); case Country.USA: return("us"); case Country.Uzbekistan: return("uz"); case Country.Turkey: return("tr"); case Country.Latvia: return("lv"); default: throw new ArgumentOutOfRangeException(nameof(country), country, ErrorsMessages.UnknownCountry()); } }
public ErrorsMessages Validate(string param, ErrorsMessages errors) { //return Int32.TryParse(param, out int number); errors.IsNotError = true; if (param == null) { errors.IsNotError = false; errors.Message = "Не може бути пустим"; } else if (Int32.TryParse(param, out int number) == false) { errors.Message = "Невірний формат"; errors.IsNotError = false; } else if (Int32.Parse(param) < 0) { errors.IsNotError = false; errors.Message = "Не може бути менше нуля"; } else if (Int32.Parse(param) > Int32.MaxValue) { errors.IsNotError = false; errors.Message = "Занадто велике число"; } return(errors); }
public ErrorsMessages Validate(string param, ErrorsMessages errors) { var d = Double.Parse(param); errors.IsNotError = true; if (Double.TryParse(param, out double number) == false && Int32.TryParse(param, out int n) == false) { errors.IsNotError = false; errors.Message = "Невірний формат"; } else if (d < 0) { errors.Message = "Не може бути менше нуля"; errors.IsNotError = false; } else if (d > Double.MaxValue) { errors.Message = "Занадто велике число"; errors.IsNotError = false; } if (param == null) { errors.IsNotError = false; errors.Message = "Не може бути пустим"; } return(errors); }
public bool Validate() { var errors = ValidationsRules.Where(r => !r.Check(Value)).Select(r => r.ValidationMessage); ErrorsMessages = errors.ToList(); IsValid = !ErrorsMessages.Any(); return(IsValid); }
public ErrorsMessages Validate(string param, ErrorsMessages errors) { errors.IsNotError = true; if (String.IsNullOrEmpty(param)) { errors.IsNotError = false; errors.Message = "Не може бути пусте значення"; } return(errors); }
public ErrorsMessages Validate(string param, ErrorsMessages errors) { var urls = param.Split(" ").ToList(); errors.IsNotError = true; if (urls.All(u => Uri.TryCreate(u, UriKind.Absolute, out Uri uriResult)) == false) { errors.Message = "Нeвірний формат url-адреси"; errors.IsNotError = false; } return(errors); }
public List <TEntity> GetEntityExel <TEntity>(byte[] bin, IFormFile files) where TEntity : new() { ExcelPackage.LicenseContext = LicenseContext.Commercial; var properties = typeof(TEntity).GetProperties(); var propsWithAttribute = properties.Where(p => p.IsDefined(typeof(ColumnNameAttribute))); using (MemoryStream stream = new MemoryStream(bin)) using (ExcelPackage excelPackage = new ExcelPackage(stream)) { ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets[typeof(TEntity).GetCustomAttribute <SheetAttribute>().SheetName]; Dictionary <int, PropertyInfo> dictColumnAndProps = propsWithAttribute.ToDictionary(p => { var columnNumber = NumberColumn(p.GetCustomAttribute <ColumnNameAttribute>().Column, worksheet); return(columnNumber); }, p => p); List <TEntity> category = new List <TEntity>(); for (int i = worksheet.Dimension.Start.Row + 1; i <= worksheet.Dimension.End.Row; i++) { TEntity dto = new TEntity(); foreach (var keyValue in dictColumnAndProps) { ErrorsMessages errors = new ErrorsMessages(); keyValue.Value.GetCustomAttribute <ColumnNameAttribute>().Validator.Validate(worksheet.Cells[i, keyValue.Key].Value?.ToString(), errors); if (errors.IsNotError == true) { var parcer = keyValue.Value.GetCustomAttribute <ColumnNameAttribute>().Parser.Parce(worksheet.Cells[i, keyValue.Key].Value?.ToString()); keyValue.Value.SetValue(dto, parcer); } else { worksheet.Cells[i, keyValue.Key].AddComment(errors.Message, "Настя"); worksheet.Cells[i, keyValue.Key].Style.Fill.PatternType = ExcelFillStyle.Solid; worksheet.Cells[i, keyValue.Key].Style.Fill.BackgroundColor.SetColor(Color.Red); FileInfo file = new FileInfo("C:/Users/Anastasiia/Desktop/MyCatalog" + files.FileName); excelPackage.SaveAs(file); } } category.Add(dto); } return(category); } }
private static DayType ConvertCharToDateType(char character) { switch (character) { case '0': return(DayType.WorkingDay); case '1': return(DayType.NotWorkingDay); case '2': return(DayType.ShortDay); case '4': return(DayType.WorkingDayAdvanced); default: throw new ArgumentOutOfRangeException(nameof(character), character, ErrorsMessages.UnknownResponseDayType()); } }
private static IEnumerable ErrorMessagesTestsData() { var errorMessagesFunctions = new List <Func <string> > { ErrorsMessages.UnknownCountry, ErrorsMessages.UnknownResponseDayType, ErrorsMessages.CacheCanNotBeNull, ErrorsMessages.SettingCanNotBeNull, ErrorsMessages.SomethingWrongWithTheService, ErrorsMessages.ExternalServiceDidNotHandleTheRequestSeeInnerException, () => ErrorsMessages.DaysCountMismatch(4, 2), () => ErrorsMessages.DatesRangeNotSupports(04.08.Of(2020), 04.08.Of(2020), Country.Russia), () => ErrorsMessages.CanNotFindDayOffInfo(04.08.Of(2020), 04.08.Of(2020), Country.Russia), }; foreach (var errorMessagesFunction in errorMessagesFunctions) { yield return(new TestCaseData(errorMessagesFunction, new CultureInfo("ru-RU"), "[ЁёА-я]")); yield return(new TestCaseData(errorMessagesFunction, new CultureInfo("en-US"), "[A-Za-z]")); } }
public ErrorsMessages Validate(string param, ErrorsMessages errors) { errors.IsNotError = true; return(errors); }
public ErrorMessage(ErrorsMessages enumError, string code, string message = "") { Code = code; Message = $"{message} - {((ErrorsMessages)enumError).AsString(EnumFormat.Description)}"; }
/// <summary> /// Set up custom cache implementation /// </summary> /// <param name="newCache">Custom cache implementation</param> /// <exception cref="ArgumentNullException">Thrown when customCache is set to null</exception> /// <returns>Settings builder</returns> public IsDayOffSettingsBuilder UseCustomCache(IIsDayOffCache newCache) { cache = newCache ?? throw new ArgumentNullException(nameof(cache), ErrorsMessages.CacheCanNotBeNull()); return(this); }
internal IsDayOff(IsDayOffSettings settings, IIsDayOffApiClient apiClient) { this.settings = settings ?? throw new ArgumentNullException(nameof(settings), ErrorsMessages.SettingCanNotBeNull()); if (settings.TraceLevel.HasValue) { Tracer.Switch.Level = settings.TraceLevel.Value; } service = new IsDayOffService(apiClient, settings.Cache); }
public void DisplayError(string message) { ErrorsMessages.Add(message); }