Подтвердить что ты не робот

MVC3 Может ли два действия контроллера вернуть один вид?

В моем контроллере есть два метода действий. Я хочу, чтобы оба возвращали одно представление.

Причина в том, что у меня есть условные проверки в моем представлении, которые проверяют, является ли свойство нулевым, а затем не показывают div и если пользователь нажимает кнопку загрузки, то одно и то же представление необходимо вернуть, установив свойство и затем отображается div.

Эта логика требуется как минимум 15 раз, и я хочу создать отдельные действия, которые возвращают модель, но одно представление. Возможно ли это?

4b9b3361

Ответ 1

Вам просто нужно указать это имя вида в своем операторе return:

public ActionResult SomeAction()
{
    // do something
    return View("SharedView", viewModel);
}

Если у вас есть представление с именем SharedView, все действия в этом контроллере могут получить к нему доступ. Если вы хотите поделиться им между действиями, которые находятся на других контроллерах, вы можете использовать общую папку в представлениях или указать полный путь с именем вида.

Ответ 2

return View("viewName", data);


Первый параметр указывает фреймворк, из которого представление для рендеринга и второй параметр используется для предоставления данных для этого представления
Во-вторых, вы можете использовать

return RedirectToAction("actionName",new{data=something});