Модель рендеринга. Навигация в другой форме

Я переместил часть моего 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),

Другие вопросы по тегам