У меня есть контроллер с методом, который указывает на представление. Как изменить представление, на которое отображается действие? Как я хочу, чтобы он вызывал ViewB вместо ViewA? Где существуют эти сопоставления и как я могу их изменить? Спасибо за любые советы.
Спасибо ~ ck в Сан-Диего
Вместо:
return View(someModel);
используйте
return View("ViewYouWant", someModel);
Чтобы метод контроллера перенаправлялся в представление, имя которого не совпадает с методом действия, вы можете изменить оператор с
return View();
на
return View("ViewB");
Вы также можете вернуть RedirectToAction("View"), или с Javascript
RedirectToAction("View")
json(new { Redirect = url.Action(action, data) }, JsonRequestBehavior.AllowGet);
и обработать возврат соответствующим образом на стороне клиента.
Удачной охоты!
Вы можете сделать по умолчанию:
return View(myModel);
Или укажите имя просмотра в тех же папках вида контроллера или в общих:
return View("ThatView", myModel);
Или как угодно:
return View("~/myfolder/WhatEverView.ascx", myModel);
Вы можете передать имя представления в метод View: http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.view.aspx
View