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

Как установить макет из контроллера

Есть ли способ установить макет из контроллера?

попытались:

ViewData["Layout"] = "..."
return View("view", Model);

Я знаю, это будет звучать странно с некоторыми людьми....

4b9b3361

Ответ 1

Метод просмотра имеет перегрузку, чтобы установить его мастер-раскладку примерно так.

return View ("NameOfView",masterName:"viewName");

Ответ 2

В методе действий вы можете использовать свойство MasterName в классе ViewResult для изменения страницы макета.

public ActionResult Index()
        {
            var myView = View();
            myView.MasterName = "~/Views/Shared/_Layout2.cshtml"; 
            return myView;
        }

Ответ 3

Используя свой код, вы можете поместить его в свой вид:

@ {
    Layout = ViewData["Layout"];
}

Ответ 5

В контроллере вы можете установить такую ​​главную страницу. Я использую MVC 5.2

return View("ViewName", "MasterPageName", model)

Ответ 6

Если у вас есть файл _ViewStart.cshtml в вашем каталоге представлений, вы можете автоматически установить макет для всех представлений в одной и той же папке (и вложенных папках):

@{
    Layout = "~/Views/Shared/Layout.cshtml";
}