web-dev-qa-db-ja.com

ConfigurationManagerの使用方法

App.configを使用して設定を保存したい。次のコードを使用して、構成ファイルからパラメーターを取得しようとしました。

private string GetSettingValue(string paramName)
{
    return String.Format(ConfigurationManager.AppSettings[paramName]);
}

また、System.Configurationを追加し(別のクラスを使用しました)、App.configファイルに次のものがあります。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <appSettings>
    <add key ="key1" value ="Sample" />
  </appSettings>
</configuration>

しかし、ConfigurationManager-ConfigurationManager can't exist in such contextを使用しようとしてエラーが発生しましたが、System.Configurationを既に追加しています。または私は何かを見逃しましたか?

編集

構成付きクラス(フルビュー)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;

namespace browser
{
    class ConfigFile
    {
        private string GetSettingValue(string paramName)
        {
            return String.Format(ConfigurationManager.AppSettings[paramName]);
        }
    }
}

EDIT2

見た目を追加

enter image description here

つまり、問題はConfigurationMangerの使用中ではなく、以前-プログラムはエラーを理解しているため、「そのような要素を知らない」と「言います」-「要素ConfigurationManager」はそのようなコンテキストに存在しません」

EDIT

enter image description here

編集4

enter image description here

38
gbk

さて、これを見るのに少し時間がかかりましたが、これをコンパイルする方法はありません:

return String.(ConfigurationManager.AppSettings[paramName]);

String型のメソッドを呼び出すことすらありません。これを行うだけです:

return ConfigurationManager.AppSettings[paramName];

AppSettings KeyValuePairはすでに文字列を返します。名前が存在しない場合、nullを返します。


編集に基づいて、まだ作業しているプロジェクトのSystem.Configurationアセンブリに参照を追加していません。

30
Mike Perrenoud