2016-04-11 20 views
1

私は現在の会社の開発チームが使用している既存の構造を使用しています。 (下記参照)、アプリケーション内の接続文字列を変更するために、チームは「defaultDatabase」と呼ばれるXMLノードを作成します。コードでのデフォルトのデータベース接続文字列の取得

</configSections> 
<dataConfiguration defaultDatabase="Development" /> 
    <connectionStrings> 
<add name="Development" connectionString="Data source=DVHQSQL01; Initial Catalog=db; User ID=id; Password=password"/> 
    </connectionStrings> 

...ない(別のサーバー環境用のXMLでの複数の接続文字列が存在します"テスト"、 "ステージング"、 "プロダクション"など)

デフォルトの接続を使用する異なる機能を持つクラスを作成しています。私はここに示すように、1つのルートがConfigurationManagerている知っている:

https://social.msdn.microsoft.com/Forums/en-US/9a8c9f5a-092e-4c4a-87bb-9f35d8f55da1/get-connection-string-from-appconfig-file?forum=adodotnetdataproviders

あなたは、コード内の接続文字列名を変更することができます場合、これは素晴らしいですが、私たちは再構築することなく、異なる環境から変更できるようにdefaultDatabaseノードを使用します。

誰もがこの方法論の経験がありますか? defaultDatabaseノードを使用して正しい接続文字列を取得するにはどうすればよいですか?

+0

何<のconnectionStrings 'について>

+0

本当に質問を編集し、パスワードとユーザーIDを接続文字列から削除する必要があります。このページに来る人は誰でも見ることができるので、単に「」のようなものに置き換えてください。 – Icemanind

+0

@Icemanindが編集しました。 – alybaba726

答えて

3

<connectionStrings> 
    <add name="default" connectionString="..."/> 
    <add name="special1" connectionString="..."/> 
    <add name="special2" connectionString="..."/> 
</connectionStrings> 
0

configには、必要な数だけconnectionStringを設定できます。異なる名前を付けてください。あなたはさらにコネクションを持っている場合は、同じ方法でそれらを追加することができます

<connectionStrings> 
    <add name="default" connectionString="..."/> 
</connectionStrings> 

::ちょうど接続文字列エリアにdefault接続を設定

<connectionStrings> 
    <add name="default" connectionString=""/> 
    <add name="anotherOne" connectionString=""/> 
    ... 
     </connectionStrings> 
関連する問題