Как использовать _Layout.cshtml в View, когда приложение - Razor Pages - PullRequest
0 голосов
/ 14 июня 2019

В Razor Pages, _Layout.chstml, включен по умолчанию (насколько я знаю, где-то есть настройка). Если вы не хотите использовать шаблон _Layout на странице Razor, вы должны указать:

@{
    Layout = null;
}

Однако в представлении MVC вы ссылаетесь на _Layout.chstml:

@{
    ViewBag.Title = "ThankYou";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

Я даже не уверен, что можно использовать один и тот же _Layout. Я на это надеюсь, и у меня просто нет синтаксиса маршрута для Views в приложении Razor Pages (.NET Core 2.2 Razor Pages).

Я пытался:

@{
    ViewBag.Title = "ThankYou";
    Layout = "/Shared/_Layout.cshtml";
}

Но это вызвало ошибку Not Found.

1 Ответ

1 голос
/ 14 июня 2019

Предполагая, что вы хотите использовать макет Razor Pages в MVC View, используйте путь к виртуальному файлу, как в вашем примере MVC:

@{
    ViewBag.Title = "ThankYou";
    Layout = "~/Pages/Shared/_Layout.cshtml";
}

Кстати, «настройка» для страницы макета вприложение Razor Pages находится в файле _ViewStart.cshtml .версия по умолчанию включает следующее содержание:

@{
    Layout = "_Layout";
}
...