Я использую _viewstart.cshtml для автоматического назначения тот же Razor Layout на мой взгляд.
It ' это мертвый простой файл в корне моей папки Views, который выглядит следующим образом:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
Это более СУХОЕ, чем добавление директивы @Layout к каждому отдельному представлению.
Однако это создает проблему для Razor partial , потому что они запускают содержимое _viewstart.cshtml и поэтому неправильно назначают себе макет, что делает их, ммм, больше не частичными.
Вот гипотетический проект, показывающий файл _viewstart.cshtml, общий файл _layout.shtml и частичное представление ("AnonBar.cshtml").
В настоящее время я обхожу это с помощью добавление следующей строки к каждому частичному представлению:
@{
Layout = "";
}
Кажется, неправильный способ обозначать представление как частичное в Razor. (Обратите внимание, что в отличие от механизма просмотра веб-форм, расширение файла для частичных представлений такое же. )
Я рассмотрел и другие варианты, но они еще хуже:
Это то, что все еще дорабатывается командой движка Razor View Engine, или мне не хватает фундаментальной концепции?