0

app.config を作成したばかりのときは、ConfigurationManager.AppSettings[0] または ConfigurationManager.AppSettings["keyName"] を試すたびに null が返されました。だから私はこのような app.config を作成した *.settings ファイルを使用しようとしました

<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
      <section name="IndexLoader.IndexLoader" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    </sectionGroup>
  </configSections>
  <applicationSettings>
    <IndexLoader.IndexLoader>
      <setting name="ConnectionString" serializeAs="String">
        <value>INITIAL CATALOG=xxx;DATA SOURCE=xxx;User ID=xxx;Password=xxx;Application Name=xxx;</value>
      </setting>
    </IndexLoader.IndexLoader>
  </applicationSettings>
</configuration>

C# を使用してこの接続文字列を読み取るにはどうすればよいでしょうか。

ソリューションには複数のプロジェクトがあり、それらの多くには構成ファイルがあります。コードのプロジェクトの構成ファイルを使用するように指定する方法はありますか?

4

1 に答える 1

5

applicationSettingsありませんappSettings。使用する applicationSettings のエントリを読み取るには

string myCnStr = Properties.Settings.Default.ConnectionString;

あなたの場合、それは

string myCnStr =IndexLoader.IndexLoader.Default.ConnectionString;

ただし、ConnectionString には app.config に専用のセクションがあり、そこに保存して ConfigurationManager.ConnectionStrings コレクションから読み取る必要があります。

参考資料はこちら

于 2012-05-23T21:36:06.260 に答える