使用Model for _Layout.cshtml

时间:2017-08-14 04:49:24

标签: c# asp.net asp.net-mvc

我制作了几个页面,他们使用_Layout.cshtml页面。

现在.. _Layout.cshtml页面使用两个模型。例如,一个用于类别,一个用于成员信息。 (即每个页面使用两个数据模型作为默认值) 然后我需要为_Layout.cshtml发送两个数据模型。但我不知道该怎么做。

我的试用正在关注

在模型类

public class CategoryInfo
{
    string Data1 { get; set; }
}

public class LoginInfo
{
    string Data2 { get; set; }
}



public class ModelForLayout
{
    ModelOne CategoryInfo { get; set; }
    ModelTwo LoginInfo { get; set; }
}

并使用

在布局页面中
@model ModelForLayout

<html>
...
</html>

但我不知道将数据插入ModelForLayout的位置并将其发送到_Layout.cshtml

1 个答案:

答案 0 :(得分:1)

如果您的布局使用2个模型,我建议您在布局中注入ApplicationDbContext并查询模型的数据集,例如

    @inject ApplicationDbContext DbContext
    @{
         var someCategory = DbContext.Category.FirstOrDefault();
         var someMember = DbContext.Member.FirstOrDefault();
     }

“类别”和“成员”是模型并使用此方法,您可以避免使用2个模型。