-2
該查詢確實有效,但我試圖將兩個步驟合併爲一個查詢。又一個「查詢正文必須以select子句或group子句結尾」
var query1 = from b in db.GetTable<Boats>()
from o in db.GetTable<Offices>()
from u in db.GetTable<Users>()
.Where
(u =>
u.UserId == b.Handling_broker &&
o.Office == b.Handling_office &&
b.Status == 2 &&
officesToInclude.Contains(b.Handling_office)
)
select new
{
hOffice = o.Name,
bName = u.Name
};
var query2 = query1.GroupBy(t => new { office = t.hOffice, name = t.bName })
.Select(g => new { Office = g.Key.office, Name = g.Key.name, Count = g.Count() });
如果我嘗試使用下面的查詢它給我的錯誤「查詢體必須與SELECT子句或group子句結束」合併這兩個查詢。
var query1 = from b in db.GetTable<Boats>()
from o in db.GetTable<Offices>()
from u in db.GetTable<Users>()
.Where
(u =>
u.UserId == b.Handling_broker &&
o.Office == b.Handling_office &&
b.Status == 2 &&
officesToInclude.Contains(b.Handling_office)
)
.GroupBy(t => new { office = t.Office, name = t.Name })
.Select(g => new { Office = g.Key.office, Name = g.Key.name, Count = g.Count() });
我想我必須添加一個選擇的東西,但我不知道是什麼。 任何人都可以請幫忙嗎?
謝謝,這工作。你的第二個版本給了我我想要的東西。在第一個(點符號)中,我無法弄清楚如何獲得Count(),但第二個版本更易於理解。 – Gerry
@Gerry - 計數將在'u.'下,但這的確是我添加下面的代碼片段的原因 - 這更好地解釋了您在那裏做了什麼 –