2014-11-25 1 views
2

Это очень простые вопросы. Я прошел жизненный цикл MVC, но не нашел этих оснований.Последовательность выполнения файлов varoius в Asp.Net MVC

У нас есть _Viewstart, _Layout, виды и частичные виды. Рассмотрим стандартный сценарий, в котором используется вид _Layout. Имеются частичные виды как для файла _Layout, так и для просмотра. В какой последовательности все эти файлы выполняются и когда генерируется фактический html.

ответ

1

Как следует из названия, _Viewstart является первым среди других файлов вида, которые необходимо обработать. _Viewstart решает, какой файл макета обрабатываться. Вы можете иметь условный код в _Viewstart выбрать правильный файл макета в зависимости от контроллера, как показано ниже

@{ 
    var controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString(); 

    string layout = ""; 
    if (controller == "Reports") 
    { 
     layout = "~/Views/Shared/_ReportsLayout.cshtml"; 
    } 
    else 
    { 
     layout = "~/Views/Shared/_Layout1.cshtml"; 
    } 

    Layout = layout; 
} 

Так мне известно заказ следующим

1. _Viewstart 
2. _Layout 
3. Partial within layout 
4. The actual view along with the partial within the view depending on the order as it appears 
+0

Спасибо за ответ, но не получил как это сделать html в какой момент. –

+0

Просмотр в MVC - это не что иное, как использование HTML-помощников классов, скриптов и других HTML-тэгов и т. Д. Для создания вашего HTML-файла. Когда представление отображается в браузере, посмотрите на «viewource», вы увидите все теги HTML. –