我有这个 viewmodel :
public class ViewModel
{
public int Id { get; set; }
public List<Class1> OutputList { get; set; }
}
我将其传递给控制器中的部分视图:
foreach (Class1 sc in linqQuery)
{
var viewModel = new ViewModel
{
Id = sc.Id,
OutputList = sc.CodeExecutionResults.Where(s => s.Id == sc.Id).ToList()
};
model.Add(viewModel);
}
return this.PartialView(model);
然后,在视图 cshtml
中,我要显示该OutputList
:
@model IEnumerable<Models.ViewModel>
@foreach (var item in Model)
{
<tr>
<td style="width:30%">
@foreach (var result in Model.OutputList)
{
<li> result.item </li>
}
</td>
</tr>
}
但是我得到以下输出:
错误CS1061'IEnumerable'不包含'OutputList'的定义,并且找不到可以接受的扩展方法'OutputList'接受类型为'IEnumerable'的第一个参数(您是否缺少using指令或程序集引用?)
我的问题是,如何在IEnumerable<ViewModel>
的{{1}}中嵌套列表?
答案 0 :(得分:3)
使用item.OutputList
@model IEnumerable<Models.ViewModel>
@foreach (var item in Model)
{
<tr>
<td style="width:30%">
@foreach (var result in item.OutputList)
{
<li> result.item </li>
}
</td>
</tr>
}