.NETに触れて最初の頃に作ったエクセルファイル作成クラスはバージョンアップを繰り返しながら、様々なプロジェクトで使用している。
機能としては、出力したいデータセットと、出力設定を記述したXMLを与えて、エクセルファイルを作成するようになっている。
基本的にはExcelのCOMを実行時バインディングでラッピングしているのだが最近では、エクセルクリエータをラッピングしたバージョンも作成した。
データ抽出と出力設定のみに気を使えばよいので、かなり楽だ。
公開しないが・・・。
『.NETエンタープライズWebアプリケーション開発技術大全Vol.2 ASP.NET基礎編』
で、SQLインジェクション(SQL挿入)とそのエスケープ処理に関する記述(137ページ1行目)で誤解を招く部分について訂正内容がアップされたので、ここでも告知。
C#で遅延バインディングは、かなり面倒なイメージがあったが、マイクロソフトから提供されている情報をみる限りでは、それ程面倒でもない。
基本的にライブラリはC#で書いているのだが、DataSetとXMLで書いた出力定義から指定した形のExcelファイルを出力するクラスだけは、バージョンを限定したくなかったので、VB.NETで遅延バインディングを利用していた。
ちょっとC#に書き直して見るのもいいかもしれない。
(いいかもしれない。がやるかどうかは別。)