Отредактировано
У меня есть веб-сайт ASP.NET Core 2.1, на котором я установил все элементы Identity.Процесс скаффолдинга создал файл макета в этом месте:
/Areas/Identity/Pages/Account/Manage/_Layout.cshtml
Поскольку я хотел использовать макет глобально, я переместил файл макета (с вырезанной вставкой) на этот новыйlocation:
/Views/Shared/AdminLayout/_Layout.cshtml
Затем в первом месте был создан файл _ViewStart.cshtml
для использования макета во втором месте.Содержимое файла _ViewStart
выглядит следующим образом:
@{
Layout = "/Views/Shared/AdminLayout/_Layout.cshtml";
ViewData["ThisOneWorks"] = "some value";
}
Теперь проблема в том, что ViewData
s, которые я установил со страниц лесов (например, SetPassword.cshtml
, ExtenalLogins.cshtml
, ...), не являютсяработает в файле макета.Например, ViewData["Title"]
всегда пусто, но ViewData
, который я установил в _ViewStart
, работает.
Вопрос в том, как я могу использовать ViewData
из файлов опознанных лесов, когда яВы используете макет из папки общего доступа?
Редактировать 1:
Кажется, проблема в этой строке:
ViewData["ThisOneWorks"] = "some value";
Когда я удаляю его из _ViewStart
, все остальные ViewData
работают правильно, но почему?