1
我想重新使用一個linq-to-sql函數,我每次都會將它傳遞給另一個字段進行分組。重用組LINQ函數
例如:
groupby(fieldX);
groupby(fieldY);
public void groupby(??? fieldName)
{
return from rows in db....... group by fieldname
}
,這是一個僞
的感謝!
我想重新使用一個linq-to-sql函數,我每次都會將它傳遞給另一個字段進行分組。重用組LINQ函數
例如:
groupby(fieldX);
groupby(fieldY);
public void groupby(??? fieldName)
{
return from rows in db....... group by fieldname
}
,這是一個僞
的感謝!
如果我正確理解你的問題,你試圖重新創建LINQ Enumerable.GroupBy
方法本身。
您可以從而達到您想要的結果,而不需要編寫一個全新的方法,這樣做:
var group1 = someEnumerable.GroupBy(o => o.fieldX);
var group2 = someEnuemrable.GroupBy(o => o.fieldY);
結帳this後。也許你會需要混合代碼一點點,但你會發現GroupBy(string fieldName)
那裏介紹動態創建的Lambda表達式
我希望它其發送到SQL ...查詢本身內。我不希望我的應用程序計算這個 – Himberjack
你用什麼來訪問數據庫?這個實體框架,LINQ to SQL,還是其他一些技術?無論採用哪種技術,如果它將查詢以「IQueryable」的形式返回,GroupBy方法仍然可以在「IQueryable 」上工作,並將組推遲到數據庫。 –
@Himberjack - 如果您正在使用Linq-To-SQL,只要'GroupBy'位於DataContext上,它就會被髮送到數據庫。 – vcsjones