我呈現在我的MVC 5應用程序驗證摘要如下:MVC3在錯誤添加字段名稱,以驗證摘要
@Html.Partial("_ValidationSummary", @ViewData.ModelState)
和局部視圖代碼如下:
@model ModelStateDictionary
<div class="@(Html.ViewData.ModelState.IsValid ? "validation-summary-valid" : "validation-summary-errors") panel panel-danger"
data-valmsg-summary="true">
<div class="panel-heading">
Please, correct the following errors:
</div>
<div class="panel-body">
<ul>
@foreach (var modelError in Model.SelectMany(keyValuePair => keyValuePair.Value.Errors))
{
<li>@modelError</li>
<li>@modelError.ErrorMessage</li>
}
</ul>
</div>
</div>
這是工作得非常好 - 因爲錯誤消息顯示錯誤的字段。
但是 - 模型上的錯誤字段的名稱沒有添加 - 所以我有一個手機號碼和家庭電話和工作電話的字段。如果我把abc放入每個字段,那麼在我的驗證摘要中,我會得到3條錯誤消息,說"Phone Number is Invalid"
,但我想將該字段添加到錯誤消息中,以便我可以將該錯誤消息添加到用戶將知道哪些字段是錯誤的?
有沒有簡單的方法來調整我的當前代碼來實現這一目標?
我會建議在公佈這個答案,而不是LINQ聲明的鏈接如下。此外,請參閱http://www.asp.net/mvc/tutorials/older-versions/models-(data)/validation-with-the-data-annotation-validators-cs,以獲得一個顯示模型和HTML的良好示例。 – 2014-09-26 11:09:40