在MVC4中的单个视图中访问多个模型中的项目
本文关键字:模型 项目 视图 MVC4 单个 访问 | 更新日期: 2023-09-27 17:59:50
我遇到了一个关于如何在mvc中从不同视图访问变量的问题。我设置它的方式是,我在一个视图上有一个模态,我想显示多个模型的值。我知道我必须使用foreach语句来遍历这些项,但我不知道如何访问其他项。
这就是我在视图中对模型的称呼:
@model IEnumerable<MyApp.Models.Problems>
以下是我尝试访问值的模型:
public class Problems
{
public int Id { get; set; }
public string Title { get; set; }
public IEnumerable<MyApp.Models.Category> Categories { get; set; }
public IEnumerable<MyApp.Models.Type> Types {get; set;}
}
这是我的其他型号:
public partial class Category
{
public int Id { get; set; }
public string Title { get; set; }
}
public partial class Type
{
public int Id { get; set; }
public int Order { get; set; }
public string Description { get; set; }
}
下面是我尝试做的一个例子:
这调用了正在加载的问题模型中的标题:
@Html.DisplayNameFor(model => model.Title)
但我希望它能够在相同的视图中调用类别标题。任何人如果有任何想法或能为我指明正确的方向,都将不胜感激!!!
这就是如何使用嵌套的foreach
循环来实现您想要的:
@foreach (Problems problems in Model)
{
foreach (Category category in problems.Categories)
{
@Html.DisplayNameFor(category => @category.Title)
}
...
}
您可能需要在视图顶部添加using
语句,以包含模型所在的名称空间。例如:
@using MyApp.Models