Html 在MVC4中迭代模型项

Html 在MVC4中迭代模型项,html,asp.net-mvc-4,view,model,Html,Asp.net Mvc 4,View,Model,我想遍历从foreach(模型中的var项)返回的项。与(int i=0;i的类似,您不能迭代项,因为项属于RegisterViewModel类型。这样做没有意义 如果要显示该值,可以直接使用它,如下所示: @model IEnumerable<Project.Models.RegisterViewModel> @foreach(item in Model) { <div>@item.Value</div> } .Where扩展方法返回一个IEnu

我想遍历从
foreach(模型中的var项)
返回的项。与(int i=0;i的
类似,您不能迭代
,因为
属于
RegisterViewModel类型。这样做没有意义

如果要显示该值,可以直接使用它,如下所示:

@model IEnumerable<Project.Models.RegisterViewModel>

@foreach(item in Model) {
    <div>@item.Value</div>
}
.Where扩展方法返回一个
IEnumerable
,因此您希望:

IEnumerable<RegisterViewModel> model = db.RegisterViewModel.Where(data => data.Name == User.Name);
return View(model);

什么是
item
?你能展示
Model
的代码吗?我肯定我可以在否决票中使用一些解释。我相信这个问题是非常有效的,因为我在服务器端几乎找不到任何东西可以迭代元素。我认为唯一的方法是将对象解析到客户端并使用JavaScript对于其余部分。那么是否可以将该项目键入ICollection?现在,您已经更新了您的问题并提供了更多详细信息,这一点很清楚。您不能迭代
项目
,因为
项目
不是一个集合。基本上您已经拥有了该模型的集合。我已经更新了我的答案以反映这一点。是的,谢谢这是我的研究让我发现的。如果我可以迭代
项,我希望避免编写大量冗余的HTML代码。
更新了我的问题,告诉我为什么要使用for循环来迭代该项。
model IEnumerable<Project.Models.RegisterViewModel>

@foreach(item in Model) {
    @for(int i=0; i<item.Length;i++) { \\this is where I would like to iterate though the item
    if(item[i]!= null) // using a for loop would avoid me having to write this if condition multiple times.
         <div>@item[i].value</div>
    }
@model IEnumerable<Project.Models.RegisterViewModel>

@foreach(item in Model) {
    <div>@item.Value</div>
}
RegisterViewModel model = db.RegisterViewModel.Where(data => data.Name == User.Name);
IEnumerable<RegisterViewModel> model = db.RegisterViewModel.Where(data => data.Name == User.Name);
return View(model);
var model = db.RegisterViewModel.Where(data => data.Name == User.Name);
return View(model);