2013-03-27 64 views
1

我需要一個DataTable轉換成IEnumerable的再使用LinqBridge正確...我需要爲了使用一些foreach循環來解析SELECT * FROM X查詢到Query.GroupBy(l => l.Field);正確分組我查詢...C#框架2的DataTable到IEnumerable的

我試過

public static IEnumerable<DataRow> getRows(DataTable table) 
{ 
    foreach (DataRow row in table.Rows) 
    { 
     yield return row; 
    } 
} 

但我不能用getRows(myDataTable).Any()或其他LINQ的功能...一些幫助,請。

我無法從Framework 2進行升級,我的部門想從我的4.0應用降級到2.0,因爲他們absoluty拒絕升級計算機,所以現在我非常沮喪,因爲我的應用是WPF 4.0,我正在遷移一切都以WinForm(這是一個爛攤子)和更新每一種方法...

非常感謝。

編輯

發現了問題,我打電話using LinqBridge卻忘了之後補充說,現在using System.Linq的問題就解決了,一切工作...刪除此信息請,或留,以指導喜歡我的人,讓他們知道他們需要調用System.Linq的...

+0

我不認爲Linq在.NET 2.0上受支持嗎?從內存中,它首先到達3.5 ... – 2013-03-27 14:20:53

+0

您是否使用3.5框架(它是2.0運行時的一部分)?如果你是這樣,你可以在DataTable上使用'AsEnumerable()'擴展,就像[here](http://stackoverflow.com/a/5298438/745969)。 – Tim 2013-03-27 14:33:40

+0

我使用2.0框架,不能使用AsEnumerable(),所以這是唯一的解決方案。 – 2013-03-27 15:53:26

回答

0

發現問題,我打電話使用LinqBridge,但忘記添加using System.Linq現在問題已解決,一切工作與我發佈在我的問題上的方法。