質問

セットアップ:

ConnectionStringを使用してSQLデータベースに接続するDLLがあります。 DLLをWebサイトに追加するとき、DLLが正しく機能するためにweb.configに接続文字列を追加する必要があります(これは仕様によるものです)。 web.configに追加すると、すべて正常に動作します(予想どおり)。

問題:

接続文字列をIISにあるWebサイトのASP.NETアプリケーション設定に移動したいときに問題が始まります>デフォルトのウェブサイト>プロパティ> ASP.NETタブ>グローバル設定を編集...>接続文字列マネージャー

web.configから削除してそこに置くと、DLLが機能しません。接続文字列を自分のウェブサイトの他の場所で(DLLからではなく)使用すると、このメソッドでデータベースにアクセスできますが、何らかの理由でDLLはweb.configにある場合にのみアクセスできます。

質問:

web.configの代わりにASP.NET構成設定接続文字列マネージャーにリストされている接続文字列を使用するようにDLLを取得するにはどうすればよいですか?

役に立ちましたか?

解決

ConfigurationManager.ConnectionStringsを介して接続文字列を検索するのではなく、WebConfigurationManagerクラスを介して取得できる一般的なASP.Net構成設定からセクションを検索する必要があります。

    // Get the connectionStrings section.
ConnectionStringsSection connectionStringsSection =
    WebConfigurationManager.GetSection("connectionStrings")
    as ConnectionStringsSection;

// Get the connectionStrings key,value pairs collection.
ConnectionStringSettingsCollection connectionStrings =
    connectionStringsSection.ConnectionStrings;

// Get the collection enumerator.
IEnumerator connectionStringsEnum =
    connectionStrings.GetEnumerator();
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top