我试图获得联赛比赛列表并且正在
EntityFramework.SqlServer.dll中发生但未在用户代码中处理的“System.NotSupportedException”类型的异常
我的视图代码如下:
public ActionResult viewSchedule(int? id)
{
int leagueId = (int)id;
int seasonYear = getSeasonYear();
League league = db.Leagues.Find(leagueId);
var leagueGames = db.Games.Where(l => l.League == league).Where(g => g.SeasonDate == seasonYear);
return View(leagueGames.ToList());
}
并且视图模型是:
@model IEnumerable
答案 0 :(得分:4)
db.Games.Where(l => l.League == league)
这行代码是您可能收到错误的地方。您不能在EF查询中进行对象比较,因为EF需要将LINQ语句转换为SQL查询。你最好用它们的id来比较对象。
db.Games.Where(l => l.League.Id == league.Id)
应该有用。