Модель рендеринга. Навигация в другой форме
Я переместил часть моего html из layout.cshtml в другой файл (topnavigation.cshtml) и вызвал его с помощью: @Display.TopNavigation(); В этом новом файле формы, как я могу получить его для отображения фактического содержимого зоны навигации. Я ожидал, что @Display(Model.Navigation) будет работать, но.Navigation имеет значение null, когда находится в topnavigation.cshtml?
1 ответ
Вы находитесь в другой форме - если вы не установите свой Navigation
собственность (например, по телефону @Display.TopNavigation(Navigation: "something"))
это будет ноль, что ожидается.
Вы можете получить доступ к корню Layout
Форма в любом файле.cshtml через Layout
собственность (или WorkContext.Layout
- оба возвращают один и тот же объект). Таким образом, рендеринг основной навигации будет таким же простым, как вызов @Display(Layout.Navigation)
,