Предположим, что ошибки ModelState произошли в действии под названием AddComment (). AddComment не имеет своего собственного представления, поэтому вместо возврата View () мы должны вернуть View («Блог»). Мы не можем использовать RedirectToAction («Блог»), потому что теряем наши ошибки ModelState. Проблема в том, что если представление блога связано с моделью блога?!? Предположим, у нас есть действие Index (), работа которого заключается в извлечении данных из блога и возвращении View («Blog», BlogModel). Нам нужно было бы скопировать содержимое Index (), из которого извлекается BlogModel, в наше действие AddComment (). Иначе, возвращая View («Блог») из AddComment, мы получим нулевое исключение при разборе представления блога. Это единственный способ поддерживать ошибки ModelState между действиями, использующими одно и то же представление? Я только начал изучать MVC, и я все еще изучаю правильный способ размещения своего кода, поэтому, пожалуйста, просветите меня.
[HttpGet]
public ActionResult Index()
{
BlogEntry RecentBlogEntry;
//get the most recent blog entry
RecentBlogEntry = m_BlogEntryDataService.GetRecentBlogEntry();
return View(RecentBlogEntry);
}
[HttpPost]
public ActionResult AddComment(BlogComment NewComment)
{
if (ModelState.IsValid)
m_CommentDataService.AddComment(NewComment);
//get the most recent blog entry - AGAIN
return View("Index", m_BlogEntryDataService.GetRecentBlogEntry());
}