private async Task <List <string> > Currency_ValidationDelegate(object sender, string propertyName) { var currency = (EditableCurrency)sender; List <string> errors = new List <string>(); switch (propertyName) { case nameof(Currency.CurrencyTitle): if (await _currenciesService.HasEnglishName(currency.CurrencyTitle)) { errors.Add("عنوان نباید تکراری باشد"); } return(errors); case nameof(Currency.CurrencyTitle2): if (await _currenciesService.HasFarsiName(currency.CurrencyTitle2)) { errors.Add("عنوان نباید تکراری باشد"); } return(errors); default: return(null); } }