Html 我想在我的主页上显示即将到来的演出公告
这是我的家庭控制器:Html 我想在我的主页上显示即将到来的演出公告,html,asp.net-mvc-5,Html,Asp.net Mvc 5,这是我的家庭控制器: 公共类HomeController:控制器 { 私有应用程序的bContext\u上下文; 公共家庭控制器() { _context=新的ApplicationDbContext(); } 公共行动结果索引() { var upcomingGigs=\u context.Gigs .包括(g=>g.Artist) .Include(g=>g.Genre) .Where(g=>g.DateTime>DateTime.Now); 返回视图(上行Gigs); }首先,您需要在末
公共类HomeController:控制器
{
私有应用程序的bContext\u上下文;
公共家庭控制器()
{
_context=新的ApplicationDbContext();
}
公共行动结果索引()
{
var upcomingGigs=\u context.Gigs
.包括(g=>g.Artist)
.Include(g=>g.Genre)
.Where(g=>g.DateTime>DateTime.Now);
返回视图(上行Gigs);
}
首先,您需要在末尾添加ToList()
。请尝试以下方法:
var upcomingGigs = _context.Gigs
.Include("Artist")
.Include("Genre").ToList();
其次,如果where子句试图对Include()中属于表的列执行筛选,则它是不正确的
我建议创建如下视图模型:
public class Movie_ViewModel
{
public string genreName { get; set; }
public string artistName { get; set; }
public string movieDateTime { get; set; }
}
现在,在控制器中,假设DateTime列
属于Gigs表
:
List<Movie_ViewModel> upcomingGigs = _context.Gigs.Where(g => g.DateTime > DateTime.Now)
.Include("Artist")
.Include("Genre")
.Select( m => new Movie_ViewModel{
genreName = m.Genre.Name,
artistName = m.Artist.Name,
movieDateTime = m.DateTime
})
.ToList();
return View(upcomingGigs);
List upcomingGigs=\u context.Gigs.Where(g=>g.DateTime>DateTime.Now)
.包括(“艺术家”)
.包括(“体裁”)
.选择(m=>new Movie_ViewModel{
genreName=m.Genre.Name,
artistName=m.Artist.Name,
movieDateTime=m.DateTime
})
.ToList();
返回视图(上行Gigs);
最后,在你看来:
@model IEnumerable<Path.To.Movie_ViewModel>
@foreach (var item in Model)
{
item.genreName . . .
}
@model IEnumerable
@foreach(模型中的var项目)
{
item.genreName。
}
希望这有帮助:)你能详细说明你到底想完成什么,比如插图或现场示例吗?并展示你迄今为止所做的尝试。我正在调试,但列表中没有内容。