Я предлагаю вам использовать удаленную проверку для этих случаев. Вы можете проверять все, что хотите, используя дополнительные данные из вашего DbContext, и это автоматически подразумевает проверку на стороне клиента с помощью jQuery Unobtrusive
.
Пример
Свойство Annotate с помощью [Remote] атрибут
[Remote(action: "VerifyPaper", controller: "MyControler")]
public string PaperQuantity {get; set;}
Так как jQuery ожидает JSON ответа, ваш метод Verify paper
в вашем контроллере, например, должен выглядеть следующим образом:
[AcceptVerbs("GET", "POST")]
public IActionResult VerifyPaper(string paperQuantity)
{
if (string.Empty(paperQuantity))
{
// Your error message
return Json("Paper quantity can't be empty.");
}
// If everything is okay return true
return Json(true);
}
И ваш взгляд должен быть как это:
<label asp-for="PaperQuantity">Paper quantity</label>
<input asp-for="PaperQuantity"/>
<span asp-validation-for="PaperQuantity"></span>
Вы можете узнать больше о удаленной проверке здесь .