configファイル

一般的にApp.configとWeb.configに分ける。

configファイルを読み込む前提

・参照設定にSystem.Configuration.dllを追加

・using System.Configuration

デフォルトの場合

string info = ConfigurationManager.AppSettings["info"];

valueの中にHTML("", <, &等)を含む場合、HTML escapeを行う必要がある。

<add key="url" value="http://www.localhost.com?&cid=&sid="/>

<add key="url" value="http://www.localhost.com?&amp;cid=&amp;sid="/>

任意場所のconfigファイルを読み込む場合

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<appSettings>

<add key="wsUrl" value="http://localhost/www/WebService.asmx"/>

</appSettings>

<connectionStrings>

<clear />

<add

name="ConnectionString"

connectionString="Server=.\SQLEXPRESS;Integrated Security=True;Database=XXXX;Persist Security Info=False"

providerName="System.Data.SqlClient"/>

</connectionStrings>

</configuration>

private const string CONFIG_FILENAME = @"\XXXX.dll.config";

// 方法1

var configFile = System.Environment.CurrentDirectory + CONFIG_FILENAME;

// 方法2

var configFile = System.IO.Directory.GetCurrentDirectory() + CONFIG_FILENAME;

var exeFileMap = new ExeConfigurationFileMap { ExeConfigFilename = configFile };

var config = ConfigurationManager.OpenMappedExeConfiguration(exeFileMap, ConfigurationUserLevel.None);

var connString = config.ConnectionStrings.ConnectionStrings["ConnectionString"].ConnectionString;

var info = config.AppSettings.Settings["wsUrl"].Value;