我想問是否有更好的方法來實現我想要做的事情。實體框架IQueryable,有2個查詢
我需要獲取具有日期格式或等於給定日期的子圖表的所有記錄,以及具有日期小於給定日期的第一條記錄。
我發現這個解決方案有效,但我不確定這是否是最好的方法。
var q = context.Istc0.Include("Interests").Where(a => a.IIsin == listKey).Select(a => new
{
Istc0 = a,
Interests = a.Interests.Where(d => d.InDat >= date)
});
var qq = context.Istc0.Include("Interests").Where(a => a.IIsin == listKey).Select(a => new
{
Istc0 = a,
Interests = a.Interests.Where(d => d.InDat < date).OrderByDescending(d => d.InDat).Take(1)
});
var xxx = q.ToList()[0].Istc0;
xxx = qq.ToList()[0].Istc0;
return xxx;
看起來你正在執行'q'查詢,然後扔掉結果。 – SWeko
這裏有點不清楚你想在這裏做什麼。看看你的代碼,你只是得到q的第一個結果的'Istc0'屬性,然後用qq的第一個結果的'Istc0'屬性覆蓋它。還有什麼你想要做的嗎?兩個查詢的「興趣」屬性似乎都沒有被使用。 –
好吧,我試圖更好地解釋它,我必須從過去的一個日期到今天的所有記錄都記錄在我的興趣表中,但是在那天之前我還需要記錄第一條記錄。我以這種方式工作,我得到了我需要的所有數據,但它似乎不是一個乾淨的方式來完成這項工作 – Raphael