patterns & practices Enterprise Libraryや、最近の@ITの市川さんの記事に大いに影響を受けて、Enterprise Libraryをずっと触ってみたかったのですが、やっとちょっとだけ見てみる時間ができました。
バージョンは、1.1(June 2005)です。
で、まずは@ITでも最初に取り上げられている、Data Access Application Block(DAAB)から見てみたわけですが、こういうのはやはり自分でラッパーは用意すべきなのでしょうね。
私のイメージでは、Datasetの取得は
ds = db.GetDS(tbl,sql)
てな感じでやりたいのですが、DAABはそこまで提供はしてくれていません。しかも、おそらく一番手軽なDataset取得メソッドであるExecuteDataSetメソッドは、その中のテーブル名が”Table”という固定文字で書かれているので、取得したあと使う側はそれを認識していないといけないわけです。
なので、ラッパーとして
Public Const TBLName As String = “Table”
Public Function GetDS(ByRef sql As String) As DataSet
Dim db As Database = DatabaseFactory.CreateDatabase()
Dim dbCommandWrapper As DBCommandWrapper = db.GetSqlStringCommandWrapper(sql)
Return db.ExecuteDataSet(dbCommandWrapper)
End Function
みたいな感じのものがあるとよいなと思ったわけです。この場合は使う側は
ds = xx.GetDS(sql)
ds.Tables(xx.TBLName).DefaultView.Sort = xxx
みたいな感じになります。
しかし、もう少し探してみると、
public virtual void LoadDataSet(DBCommandWrapper command, DataSet dataSet, string tableName)
なんてものが用意されていました。これを使うと、ラッパーの中身は
Dim ds As New DataSet
Call db.LoadDataSet(dbCommandWrapper, ds, Me.TBLName)
Return ds
となります。この方が、何かとよい気がしますが。使い分け必要かな・・・。
で、.NET2.0環境では、まだ動かせません。構成ファイルの書き方が違うような、別の場所のような・・・もう少し調べてみましょう。
Enterprise Library ファーストインプレッション
最終更新日時 : 2017年10月18日
最近の投稿
-
引っ越し先のサービスダウン
-
このサイトは引っ越しました
-
Meet Magento 2018 – Google講演
-
Code4StartUp ~ UberEatsを作ろう ~ API呼び出し
-
Code4StartUp ~ UberEatsを作ろう ~ Facebook接続
-
Code4StartUp ~ UberEatsを作ろう ~ デザインなど
-
Code4StartUp ~ UberEatsを作ろう ~ cocoapods
-
Code4StartUp ~ UberEatsを作ろう ~ Swift続行中
-
Code4StartUp ~ UberEatsを作ろう ~ iMac購入して続行
-
格納型XSS システムアーキテクト試験より
トラックバック URL
http://jqinglong.wp.xdomain.jp/2005/07/24/enterprise-library%e3%80%80%e3%83%95%e3%82%a1%e3%83%bc%e3%82%b9%e3%83%88%e3%82%a4%e3%83%b3%e3%83%97%e3%83%ac%e3%83%83%e3%82%b7%e3%83%a7%e3%83%b3/trackback/