public override string this[string columnName] { get { if (columnName == "Name" && string.IsNullOrWhiteSpace(Name)) { return("Artist name is required!"); } if (columnName == "Phone" && (Phone.Length < 8 || !new PhoneAttribute().IsValid(Phone))) { return("the specified phone number is incorrect!"); } if (columnName == "Email") { if (string.IsNullOrWhiteSpace(Email)) { return("Email is a required field!"); } else { var task = ValidateMail.MailIsValidAsync(Email); task.Wait(); if (!task.Result) { return("the specified Email is incorrect!"); } } } if (columnName == "BankAccountNo") { IIbanValidator validator = new IbanValidator(); IbanNet.ValidationResult validationResult = validator.Validate(BankAccountNo); if (string.IsNullOrWhiteSpace(BankAccountNo)) { return("IBAN is a required field!"); } else if (!validationResult.IsValid) { return("the specified IBAN is incorrect!"); } } return(""); } }