追記:このエントリーが当ブログで一番アクセスが多いです。DataSetはまだかなり使われてるんですね。。。
追記終わり。
感動したんでポストしときます。
Entity Frameworkが登場したり、Silverlightじゃサポートされなかったりと、昨今はめっきり印象が薄いDataSetやDataTableですが、.NET Framework 1.1/2.0 アプリだとバリバリ使われまくってると思います。そんなアプリを.NET 3.5 に移行後、「よーしLinqつかっちゃうぞ!」と思って、いざDataTable.Rows. まで打ってインテリセンスを表示させてみると、いつもの拡張メソッドが出てきません。このガッカリ感はハンパない。DataRowCollectionはIEnumerable
とガッカリしていたのが半年ほど前でそのまま放置してたんですけど、最近見つけたのが上記ツイートにある話です。DataTable.AsEnumerable()なるメソッドで、Linqが使えるようになります。
var items = dt.AsEnumerable() .Where(x => x["col1"].ToString() == "1") .Select(x => x["col1"].ToString());
型付DataSetもこのとおり。
var TypedItems = TypedDt.AsEnumerable()
.Where(x => x.EmployeeID == 123)
.Select(x => x.Country);
参考:【LINQ to DataSet】http://msdn.microsoft.com/ja-jp/library/bb386977.aspx

作って覚えるVisual Basic 2015 デスクトップアプリ入門
- 作者: 荻原裕之,宮崎昭世
- 出版社/メーカー: 秀和システム
- 発売日: 2016/03/22
- メディア: 単行本
- この商品を含むブログを見る