Как получить доступ к свойству модели в _layout.cshtml - PullRequest
0 голосов
/ 20 февраля 2019

Ну, я генерирую шаблоны электронной почты, используя cshtml.

И у меня есть один из таких шаблонов.

@model Api.Model.SignUpViewModel

@{
    Layout = "layout";
}

А в SignUpViewModel у меня есть свойство isUnsubscribable

Так что на странице макета я должен показать ссылку для отписки на основе этого.

И у меня есть несколько других моделей электронной почты, которые имеют это свойство, а некоторые другие не имеют этого.

Как я могу отправить эти данные на Layout.cshtml

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Вы хотите создать родительскую ViewModel с вашим свойством isUnsubscribeable.Затем сделайте вашу SignUpViewModel наследовать от этого родителя.

Тогда на вашей странице макета ваша Модель выглядит следующим образом:

@model Api.Model.ViewModel
//Access your property here

А на вашей странице cshtml у вас будет дочерняя модель представления:

@model Api.Model.SignUpViewModel

Thisбудет работать, потому что обе страницы получают то, что им нужно, когда вы передаете модель из контроллера.

0 голосов
/ 20 февраля 2019

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

@Model.isUnsubscribable
...