LINQ to XML を使って .xlsx ファイルを読む

http://ufcpp.net/study/csharp/source/LinqSample.zip
http://ufcpp.net/study/csharp/slide/LINQ.pptx

LINQ 関連のデモをやりたいなぁと思って、

  1. in-memory オブジェクト、SQLXML に対してほぼ同じ記法でクエリが書ける
  2. LINQ to XML を使って .xlsx ファイルを読んでみる

という2本立てのデモを作成。

こないだ極東 IT Engneers勉強会でひろえむさんが OOXML の講演をしてて、

  • OOXML の規格は↓からなる
    • パッケージ: コンテンツの XML を、どうやって1つのファイルにまとめるかの規格
    • パーツ : コンテンツの XML の中身の規格
  • パッケージの方に関しては、OOXML に限らず、他のファイル形式でも使われてる(Open Packaging Conventions)
  • というか、Open Packaging Conventions のファイルは、.NET Framwork 3.0 の標準ライブラリ( System.IO.Packaging.ZipPackage クラス)を使って読み書きできる

という話だったので、じゃあ、やってみるかと。
ZipPackage と LINQ to XML で .xslx ファイルの中身を読んでいます(書く方は未対応)。

デモ用に使ってるデータが相変わらずおかしいのはスルーしてください。

あと、もう1個、IQueryable の実装方法に関するデモも作りかけ。