Переименование _ViewStart.cshtml - PullRequest
9 голосов
/ 30 марта 2011

Можно ли настроить Razor для поиска "макетных" файлов макетов с именами, отличными от _ViewStart.cshtml?Я имею в виду, без явной установки свойства Layout в шаблонах контента.

В проекте, над которым я работаю, каждая область имеет свой собственный _ViewStart.cshtml.Поверх них есть «глобальный» _ViewStart.cshtml.Это прекрасно работает, но я думаю, что было бы более удобно, если бы я мог назначить разные имена для каждого основного шаблона, как, например, вызов «глобального» шаблона _GlobalViewStart.cshtml.Таким образом, было бы легче обнаружить каждый файл, когда их много на ленте Visual Studio.(Глупо? Возможно.)

Если это возможно, как можно это сделать?

Спасибо.

Ответы [ 2 ]

12 голосов
/ 30 марта 2011

Он жестко запрограммирован в RazorViewEngine как "_ViewStart", поэтому я сомневаюсь, если вы не скомпилируете свою собственную версию.

public class RazorViewEngine : BuildManagerViewEngine {
    internal static readonly string ViewStartFileName = "_ViewStart";
}

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

1 голос
/ 04 октября 2011

Хм, просто говорю, но не весь смысл _ViewStart в том, что он является центральным местом для определения настроек для всех страниц (в области). Обратите внимание, это не означает, что это главная страница.

Обычно вы бы указали мастер-страницу по умолчанию для области в _ViewStart, по умолчанию это _Layout (которая является вашей мастер-страницей)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...