Получить сообщение об ошибке атрибута isUnique MVC
У меня есть свойство модели, как показано ниже,
[Index("CourseCodeIndex", IsUnique = true)]
[MaxLength(15)]
public string Name { get; set; }
и если я использую недействительные данные, это работает хорошо, но не возвращает сообщение об ошибке. Есть ли способ показать сообщение (просмотреть, как и другие обязательные, как сообщения)
@Html.ValidationMessageFor(model => model.Name)
2 ответа
Решение
Сделайте экземпляр вашего контекстного файла
private datbaseContext db = new databaseContext();
добавьте приведенный ниже код в ваш метод действия контроллера
db.table.Add(model);
var user = db.table.Where(u => u.Name == model.Name).FirstOrDefault();
if (user != null)
{
ModelState.AddModelError("", model.Name + " Already Exists");
}
else
{
db.SaveChanges();
return RedirectToAction("Index", "model");
}
И @Html.ValidationSummary(true)
с твоего взгляда прикреплю сообщение об ошибке
Если вы хотите показать сообщение об ошибке, вам нужно объявить его следующим образом:
[Required(ErrorMessage = "Compiletime error required")]
Кроме того, попробуйте это.
[Unique(ErrorMessage = "This already exist !!")]