如何在_layout.cshtml中访问模型的属性

时间:2019-02-20 19:40:42

标签: asp.net-mvc razor

我正在使用cshtml生成电子邮件模板。

我有一个这样的模板。

@model Api.Model.SignUpViewModel

@{
    Layout = "layout";
}

SignUpViewModel中,我有一个财产isUnsubscribable

因此,在布局页面上,我必须基于此显示退订链接。

我还有一些其他具有此属性的电子邮件模型,有些则没有。

如何将这些数据发送到Layout.cshtml

2 个答案:

答案 0 :(得分:1)

无需将数据发送到布局。使用下面给定的语法已经可以在那里访问了

def empty(): DataClass = ...

答案 1 :(得分:1)

您要使用isUnsubscribable属性创建父ViewModel。然后,使您的SignUpViewModel从该父对象继承。

然后在布局页面中,您的模型如下:

copyto

在cshtml页面中,您将拥有子viewmodel:

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

这将起作用,因为当您从控制器传入模型时,两个页面都能满足他们的需求。