public class RegistrationQuery
{
public Guid Id { get; set; }
[Required(ErrorMessage = "Email - обязательное поле.")]
public string Email { get; set; }
[Required(ErrorMessage = "Пароль - обязательное поле.")]
public string Password { get; set; }
[MaxLength(60, ErrorMessage = "Имя - не должно быть более 60 символов.") ]
[Required(ErrorMessage = "Имя - обязательное поле.")]
public string Name { get; set; }
[MaxLength(60, ErrorMessage = "Фамилия - не должна быть более 60 символов.")]
[Required(ErrorMessage = "Фамилия - обязательное поле.")]
public string Surname { get; set; }
[MaxLength(60, ErrorMessage = "Отчество - не должно быть более 60 символов.")]
public string MiddleName { get; set; }
}
Проверка данных объекта
private bool IsValidDataQuery(RegistrationQuery dataQuery, RegistrationReturn regLog)
{
regLog.Result = true;
var results = new List<ValidationResult>(); // тут будет описание ошибок
if ((dataQuery == null) || !(dataQuery is RegistrationQuery)) // проверка на соответствие типа данных
{
regLog.Message = "Не верный формат данных.";
regLog.Result = false;
}
else if (!Validator.TryValidateObject(dataQuery, new ValidationContext(dataQuery, null, null), results, true)) // проверка объекта описанного ранее
{
string message = " ";
results.ForEach(err => message += System.Environment.NewLine + err.ErrorMessage); // соберем ошибки
regLog.Result = false;
regLog.Message = message;
}
else if (IsRegisteredAddress(dataQuery.Email)) // не какая логика
{
regLog.Message = "Указанный адрес электронной почты уже зарегистрирован.";
regLog.Result = false;
}
return regLog.Result;
}
Полезные ссылки :