サイトのデータ モジュールをアセンブリ (単一の dll ファイル) に分離したいのですが、Web アプリケーションを処理する際にサイトのConnectionStringを取得して渡す最良の方法は何ですか。データ アセンブリ内で、 ConnectionManager という名前の静的クラスを作成しました。 Web.Config ファイル内にある接続名を渡して保存したいDatabaseConnectionNameという名前のプロパティがあります。この戦略では、名前を取得し、Global.asax ファイルで Web サイトの読み込み時に接続を確立し、それを前述のプロパティ ( DatabaseConnectionName ) に格納することにしました。しかし , これ は 私 が 使っ た 戦略 に 過ぎ ない. この 仕事 を する ための一般 的 パターンが 何で ある か は わから ない .
コードの部分 : ==================================== [ -------- ---- Global.asax ------------ ]
the code in the site that makes the Data module accessible for the site
void Application_Start(object sender, EventArgs e)
{
OurCompany.Data.ConnectionManager.DatabaseConnectionName = "MasterConnection";
}
[ ------------ ConnectionManager クラス------------ ] これは、サイトとは別のデータ モジュールにあります。
public static class ConnectionManager
{
public static SqlConnection GetMasterConnection()
{
string connectionString = ConfigurationManager.ConnectionStrings[**DatabaseConnectionName**].ConnectionString;
SqlConnection conn;
//conn.Open();
conn = new SqlConnection(connectionString);
return conn;
}
private static string **databaseConnectionName**;
public static string DatabaseConnectionName
{
get
{
return databaseConnectionName;
}
set
{
databaseConnectionName = value;
}
}
== おわり ============================================== ============
--- 質問は: ---
接続を保存する場所 (これは ConnectionManager クラス内のプロパティ、 theCompany.Data.ConnectionManager.DatabaseConnectionName でした)
この接続を行うのはいつですか?(ここは Global.asax アプリケーションの読み込み時間でした)
そのような情報を保存するのに最適な方法はどれですか: SessionState または ViewState または単純なプロパティ
この戦略は良いですか?これのより良い方法や一般的なパターンを知っていますか?
情報をありがとう - MHM -