巧妙運用 LINQ 查詢 DataTable 數據
雖然 LINQ 查詢是強大的數據操作工具,但它似乎並不直接適用於 DataTable。然而,解決這個看似不可能的問題有一個優雅的方案。
AsEnumerable() 擴展方法
在 DataTable 上執行 LINQ 查詢的關鍵在於 AsEnumerable() 擴展方法。此方法擴展了 DataTable 類,返回一個 IEnumerable
示例:
考慮以下 LINQ 查詢:
<code class="language-csharp">var results = from myRow in myDataTable.AsEnumerable() where myRow.Field<int>("RowNo") == 1 select myRow;</code>
此查詢篩選 "RowNo" 列等於 1 的 DataTable 行。
其他擴展方法
除了 AsEnumerable() 之外,還有其他一些有用的 DataTable 操作擴展方法:
Lambda 表達式
您還可以使用 lambda 表達式來簡化 LINQ 查詢:
<code class="language-csharp">var result = myDataTable.AsEnumerable() .Where(myRow => myRow.Field<int>("RowNo") == 1);</code>
總結
雖然 LINQ 查詢並非直接支持 DataTable,但 AsEnumerable() 擴展方法提供了一種直接且有效的方法來執行這些查詢。此擴展方法與其他可用擴展方法一起,使您可以充分利用 LINQ 的強大功能來操作 DataTable。
以上是如何使用LINQ查詢數據表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!