1

我正在使用 ASP.NET MVC3。目前我有一个博客。它运作良好,但条目现在越来越多,所以我需要一个档案来每月对它们进行分组。问题是我不知道该怎么做..


我正在考虑日期时间,但我不知道它背后的逻辑..我想实现这样的目标

September 2012 (1)
October 2012 (3)
December 2012 (0)

我会感谢任何能帮助我的人。谢谢。:)

4

1 回答 1

2

你可以这样做。我以前也有同样的问题。

档案库

 public IQueryable<ArchiveListModel> AchiveList()
        {

            var ac = from Post in db.Posts
                     group Post by new { Post.DateTime.Year
, Post.DateTime.Month }
                     into dategroup
                     select new ArchiveListModel()
                      {

                         AchiveYear = dategroup.Key.Year,
                         AchiveMonth = dategroup.Key.Month,
                         PostCount = dategroup.Count()

                       };

            return ac;
        }

控制器

public ActionResult ArchiveBrowse(int AchiveYear, int AchiveMonth, int PostCount)
        {
            var archivemodel = (from a in db.Posts
                                where a.DateTime.Year == AchiveYear &&
                                      a.DateTime.Month == AchiveMonth
                                select a).ToList();


            return View(archivemodel);
        }

看法

@foreach (var item in Model)
{
@Html.ActionLink(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(item.AchiveMonth) + "" + item.AchiveYear + " (" + item.PostCount + ")",
  "ArchiveBrowse", "Post", new
  {
      AchiveYear = item.AchiveYear,
      AchiveMonth = item.AchiveMonth,
      PostCount = item.PostCount
  }, null) 

}
于 2013-03-21T05:52:51.887 回答