【发布时间】:2011-07-14 10:12:42
【问题描述】:
我需要一个 linq 语句来返回某个日期的所有条目。在我的控制器中有一个处理事件的类的那一刻。我的 Index 类包含一个 linq 语句,它按日期对通风口进行分组,并返回每个日期有多少通风口。我想要一个浏览类,它返回与某个日期相关的事件列表。这是我的模式:
namespace NewAtAClick.Models
{
public class WhatsOn
{
public int ID { get; set; }
public DateTime? start { get; set; }
public DateTime? end { get; set; }
public string Name { get; set; }
public string Desc { get; set; }
public string link { get; set; }
public bool CalenderDisplay { get; set; }
public DateTime? day { get; set; }
public int whtscount { get; set; }
}
}
这是我在 WhatsOn 控制器中的类;
public ViewResult Index(WhatsOn model)
{
DateTime myDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
var datequery =
db.WhatsOns.Where(c => c.start > myDate)
.OrderByDescending(c => c.start)
.GroupBy(c => c.start).AsEnumerable().Select(
sGroup => new WhatsOn
{
day = sGroup.Key,
whtscount = sGroup.Count()
});
return View(datequery);
}
public ViewResult Browse(DateTime? day , int? id)
{
var eventsquery = from c in db.WhatsOns
where c.start == day
select c;
return View(eventsquery);
}
浏览类中的 linq 查询什么都不返回,只是一个空表。任何帮助是极大的赞赏!谢谢。
更新:
嘿!搞定了
这是我的新控制器;
public ViewResult Browse(int? id, DateTime? day, DateTime? start)
{
var eventsquery = from c in db.WhatsOns where c.start.Value.Day == day.Value.Day select c;
return View(eventsquery);
}
在我看来,在我的操作链接中,有什么诀窍......
@Html.ActionLink("Browse", "Browse", new { start=item.start, day=item.day })
谢谢你的帮助!!
【问题讨论】:
-
与问题无关,但您的 mydate 声明会更简单,如
DateTime myDate = DateTime.Now.Date; -
谢谢,我知道了,我稍后再改。不过还是谢谢。
标签: linq asp.net-mvc-3 datetime razor