56

VS2005 C#プロジェクトで、System.configurationへの参照を追加しました。オブジェクトブラウザで、System.Configuration.ConfigurationManagerを確認できます。Intellisense System.Configurationには、ConfigurationManagerではなく、古いConfigurationSettingsのみがあります。

マイコードSystem.Configuration.ConfigurationManager.AppSettings["MySetting"]

構文エラーとして強調表示され、コンパイルされません。

別のプロジェクトでは、まったく同じセットアップで問題なく動作します...何が起こっているかについての手がかりはありますか?

4

9 に答える 9

129

System.Configurationを使用してい ますが; コマンドはusingセクションで自動的に生成されますが、何らかの理由で実際の参照が設定されていません。

[参照の追加]、[。Net]タブに移動し、[ System.Configuration ]を選択します。

ConfigurationManagerが解決されます。

まったく同じセットアップが問題なく機能するプロジェクトに移動し、参照を確認すると、System.Configurationへの参照が表示されます。

于 2009-05-13T20:31:20.370 に答える
16

質問に答えるには(まだ5回以上答えられていないわけではありません)、プロジェクトへの参照としてSystem.Configurationを追加します。

ただし、私が本当に強調したいのは、多くの場合、System.Configuration.dllをプロジェクトの参照に追加したことですが、特別な理由で、Systemへの参照を追加した後でもConfigurationManagerがインテリセンスで表示されない場合があります。構成。参照を削除して再度追加しても。

この問題の非常に簡単な解決策は次のとおりです。

  1. System.Configuration.dllへの参照をプロジェクトに追加します
  2. ファイルを保存します
  3. ソリューションを保存する
  4. 苦労しているVisualStudioのインスタンスを閉じます
  5. ソリューションを再度開きます

この簡単な演習により、Visual Studioが再び動作し、System.Configurationへの参照を追加しなかったことが通知されなくなります。この演習は通常、説明できないすべてのVisualStudioの動作に役立ちます。

私はこれをVS2008とVS2010の両方で何度も経験しており、毎回機能します。

于 2012-08-16T22:21:05.673 に答える
11

urgh-PICNICエラー。ソリューションの間違ったプロジェクトに参照を追加しました...

于 2009-05-12T09:00:18.823 に答える
9

ASP.NET WebFormsとWinFormsの開発を切り替える場合は、このヒントが役立つ場合があります。

C#WinFormsプロジェクトで開発している場合、を使用ConfigurationManagerして設定を取得しようとするapp.configと、次のエラーが発生することがわかります。

「ConfigurationManager」という名前は現在のコンテキストに存在しません

これはASP.NETプロジェクトにデフォルトで含まれているため、これは驚くかもしれません。プロジェクトの[参照]ノードを右クリックして、[。NET]タブを確認するだけです。下にスクロールすると、が見つかりますSystem.Configuration。これをプロジェクトに追加すると、稼働状態になります。

System.Configurationへの参照の追加

コードの上部にあるusingセクションにすでに追加System.Configurationしている場合は、次のようなコードで構成設定(接続文字列など)を使用できるようになります。

con.ConnectionString = ConfigurationManager.ConnectionStrings[sConnection].ConnectionString;
于 2009-07-02T11:35:24.083 に答える
4

MSDNドキュメントから-

ConfigurationManagerクラスを使用するには、プロジェクトでSystem.Configurationアセンブリを参照する必要があります。デフォルトでは、コンソールアプリケーションなどの一部のプロジェクトテンプレートはこのアセンブリを参照しないため、手動で参照する必要があります。

https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.aspx

于 2016-06-17T18:54:54.403 に答える
4
  1. NuGetパッケージの管理に移動します
  2. System.Configurationを参照します
  3. パッケージSystem.Configuration.ConfigurationManagerをインストールします。意見
于 2019-06-27T06:31:52.610 に答える
3

System.Configurationアセンブリを暗黙的に参照する必要があると思います。

于 2009-05-12T09:46:16.610 に答える
0

これは単なる推測ですが、プロジェクトで少なくとも.NETFramework2.0が使用されているかどうかを確認する必要があります。ConfigurationManagerクラスは、ここで説明されているように.NET 2.0以降で使用できます: msdnのリンク

于 2009-05-12T08:54:23.700 に答える
0

うわー-これは私が解決するのが難しいものでした。結局、私のvb.netプログラムは、(予想どおりに)参照が含まれている場合にのみコンパイルされ、モジュールから「ImportsSystem.Net」ステートメントが(予想外に)削除されたことがわかりました。

于 2021-01-14T19:40:28.610 に答える