3


0

クラスからProperties.Settings.Defaultにアクセスしますか?

コンソールアプリを作成すると、Visual Studio 2008 Proでプロジェクトを右クリックできます。 [プロパティ]> [設定に移動]をクリックして、アプリケーションスコープ設定を入力し、次のようなコードからアクセスします。

Console.WriteLine(Properties.Settings.Default.MySetting.ToString());

クラスプロジェクトで同じことを行い、Applicatin Scope設定を次のような変数に割り当てようとすると

this.mySettingVariable = Properties.Settings.Default.MySetting.ToString();

「「プロパティ」という名前は現在のコンテキストに存在しません。」というビルド時にエラーが発生します。

何が間違っているのですか?クラスプロジェクトのApplication Scopedプロパティにアクセスするにはどうすればよいですか?

4 Answer


5


クラスライブラリプロジェクトに設定を追加するのを忘れました。 EXEプロジェクトの設定に直接アクセスすることはできません。

クラスライブラリプロジェクトに独自の設定を与えることは可能ですが、面倒です。 DLLに独自の.configファイルを含めることはできません。app.exe.configファイルのみがあります。 DLLのapp.configファイルのエントリを手動でapp.exe.configファイルにマージする必要があります。 テキストエディターでコピーして貼り付けます。 これはあまりメンテナンスできません。

別のアプローチは、クラスのこれらの設定プロパティを作成することです。 そして、メインプロジェクトのコードが独自の設定からそれらを初期化するようにします。 または、ピタで.xmlファイルを使用するため、設定を捨てます。


0


名前空間が「用途」に含まれていることを確認してください。

また、設定クラスがパブリックであることを確認してください。


0


_ クラスライブラリには構成ファイルモデルがないため、アプリケーション設定はクラスライブラリプロジェクトには適用されません。 例外は、構成ファイルを持つことができるVisual Studio Tools for Office DLLプロジェクトです。 _


0