asp.netのデータベースへの接続を管理する最良の方法は何ですか。asp.netアプリケーションのデータベースへの接続の管理
私のアプリケーションは、N層アーキテクチャを使用して構築されています。 DALは、
Public Shared Sub Delete(_
ByVal connection As MyConnectionClass, _
ByVal contact_id As Integer, _
ByVal contact_timestamp As Date _
)
With connection.ProcParams
.Add(New StoredProcParam("p_contact_id", contact_id, OracleDbType.Int32))
.Add(New StoredProcParam("p_contact_timestamp", contact_timestamp, OracleDbType.Date))
End With
connection.Execute("PKG_DATA_ACCESS.DeleteContact")
End Sub
ここで注意すべき点として、方法と静的クラスで構成され、IはBLLからDALへの接続を渡すことです。
ここでは私が考えている点はありますが、どれも問題ないようにアドバイスを求めています。
私は、私は彼ら(私は避けるようにしようとしているもの)を作成するように私のビジネスオブジェクトに渡し、その後、オブジェクトに格納し、マスターページ内の接続を作成する必要があります
は、私が使用して接続を作成する必要があります静的なクラスとCreateConnectionのようなメソッドを、私のビジネスオブジェクトのコンストラクタから呼び出す(何かしたいのですが、オブジェクトごとに接続したくないので、すべてのインスタンスで共有したいしかし、asp.netはマルチスレッドなので、静的クラスは接続を格納する意味がありません。
解決策は、Windows Forms環境でもうまく動作するはずです(sessiクラス内の静的メソッドを使用して現在のコンテキストで検索する)
アプリケーション全体で同じ接続を共有することは、必ずしも良い方法ではありません。毎秒何百ものリクエストを持つウェブサイトを考えてみましょう。すべてがデータベースと同じ接続を行っています... –
ユーザーあたりの接続についてもっと考えていましたが、Neil Nの答えはうまくありません。 – Martin