私は現在、「作成」またはデータベースに入力された日付に基づいて 10 本の映画のリストを表示するホームページを持つアプリケーションを持っています。また、各映画の評価に基づいてトップ 10 の映画のリストも表示したいと思います。別のモデルを渡すか、現在の ViewModel を変更してこれを行う方法はありますか? これが私のホームコントローラーのインデックスセクションです。
public ActionResult Index()
{
var model =
_db.Movies
.OrderByDescending(m => m.DateEntered)
.Take(10)
.Select(m => new MovieListViewModel
{
Id = m.Id,
Title = m.Title,
Genre = m.Genre,
ReleaseDate = m.ReleaseDate,
CountOfReviews = m.Reviews.Count()
});
return View(model);
}
そして、渡される ViewModel は次のとおりです。
public class MovieListViewModel
{
public int Id { get; set; }
public string Title { get; set; }
public string Genre { get; set; }
[Display(Name="Year Released")]
public DateTime ReleaseDate { get; set; }
public int CountOfReviews { get; set; }
}