我在.Net核心上检出Asp.Net Core。脚手架已经创建了一些模板。该模型的默认验证是不够的,所以我增加了一些额外的验证,当物体在浏览器中我只看到消息时@Html.ValidationMessage("InvoiceNr")
被添加到被发送到控制器现在为什么需要asp-validation-for和@ Html.ValidationMessage()?
ViewData.ModelState.AddModelError(nameof(Invoice.InvoiceNr), "Invoice number should be unique.");
cshtml文件。只有asp-validation-for="InvoiceNr"
似乎没有出现任何财产错误。
我花了一些时间才明白这一点。有人可以解释一下为什么会这样,我不得不添加2行来显示所有验证错误,这似乎与我反感。
谢谢!
@Shyju
<div class="form-group">
<label asp-for="InvoiceNr" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="InvoiceNr" class="form-control"/>
<span asp-validation-for="InvoiceNr" class="text-danger" />
</div>
</div>
你可以分享你在视图中尝试过'asp-validation-for'吗? – Shyju
[标签助手 - 自闭HTML标签是一个坏习惯?]的可能的重复(http://stackoverflow.com/questions/39486703/tag-helpers-self-closing-html-tags-is-a-bad-habit ) – GSerg