Есть несколько способов.
TempData
Это доступно в вашем контроллере. TempData сохраняется в течение одного перенаправления.
public ActionResult Process()
{
// ... Process your rows, get array of errors back ...
TempData["errors"] = errors;
return RedirectToAction("Edit");
}
public ActionResult Edit()
{
var errors = (IEnumerable<string>)TempData["errors"]; // Get the errors back.
return View(errors); // Pass into the view
}
ModelState
Вы можете добавить эти ошибки непосредственно в ModelState, а затем снова отобразить форму редактирования. Он не сохраняется при перенаправлении.
public ActionResult Process()
{
// ... Process your rows, get array of errors back ...
for(var i = 0; i < errors.Length; i++)
{
ModelState.AddModelError("row" + i, errors[i]);
}
// Can't redirect here - ModelState doesn't persist.
return View("Edit");
}
Затем в представлении редактирования просто отобразите сводку проверки:
@Html.ValidationSummary("The following row errors occured:");
Это сделает этот HTML. Класс является классом по умолчанию, установленным MVC.
<div class="validation-summary-errors">
<span>The following row errors occured:</span>
<ul>
<li>...Error 1...</li>
... Other errors ...
</ul>
</div>