我可以在改進此linq方面有所幫助。我基本上是從數據庫返回揚聲器,但如果在過去一週內發佈了他們的視頻,則將HasNew屬性設置爲true。改進linq調用使一個數據庫調用
public IQueryable<Speaker> GetSpeakers()
{
var speakers = db.Speakers.OrderBy(x => x.DisplayName);
var newVidsSpeakers = db.Videos.Where(x => x.DatePosted > DateTime.Now.AddDays(-7)).Select(x=> x.Speaker).Distinct();
foreach (var item in newVidsSpeakers)
{
var sp = speakers.SingleOrDefault(x => x.ID == item.ID);
sp.HasNew = true;
}
return speakers;
}
您使用的是LINQ提供程序? – Oded 2012-03-24 20:58:00
@Oded我正在使用LINQ to sql – raklos 2012-03-24 21:08:16
您可以使用[Join operator](http://msdn.microsoft.com/zh-cn/library/bb534675.aspx) – 2012-03-24 21:22:30