我有这个viewmodal,可以帮助我显示两种不同模态的数据
public class stdmov_viewmodal
{
public IEnumerable<Movie> Movies { get; set; }
public IEnumerable<Student> Students { get; set; }
}
视图如下
@model CodFirst.Models.stdmov_viewmodal
<h2>Students</h2>
@foreach (var item in Model.Students)
{
@Html.DisplayName("student name: ") @item.fname <br />
}
<h2>Songs</h2>
@foreach (var item in Model.Movies)
{
@Html.DisplayName("Movie name: ") <br />
}
通过这个我能够分别显示学生姓名和电影名称。
但是,如果我想显示为学生ABC已经看过电影mov1,mov2,mov3。
我试过这个
<ul>
@foreach (var item in Model.student)
{
<li>@item.fname
<ul>
@foreach (var item in Model.Movies)
{
<li>@item.name<li>
<ul>
</li>
</ul>
答案 0 :(得分:0)
您需要按以下方式过滤电影结果:
<ul>
@foreach (var item in Model.student)
{
<li>
@item.fname
<ul>
@foreach (var item in Model.Movies.Where(movie => movie.WatchedByCollection.Any(wbc => wbc.Name == item.fname)))
{
<li>@item.name<li>
}
<ul>
</li>
}
</ul>