Sie können eine web.config oder app.config von jedem Ort aus mit laden OpenMappedExeConfiguration. Stellen Sie sicher, dass System.Configurationes zu den Referenzen Ihres Projekts hinzugefügt wird.
ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap()
fileMap.ExeConfigFilename = @"c:\my-web-app-location\web.config"
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
string connectionString = config.AppSettings.Settings["ConnectionString"].Value;
Hier ist die web.config, ziemlich Standard.
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<appSettings>
<add key="ConnectionString" value="Data Source=XXXX;Initial Catalog=XXX; Trusted_Connection=True;"/>
</appSettings>
</configuration>
Update am 29.09.2017
Ich habe eine Klasse entwickelt, um das Lesen von AppSetitngs aus einer Datei zu erleichtern. Ich habe die Idee von Zp Bappi .
public interface IAppSettings
{
string this[string key] { get; }
}
public class AppSettingsFromFile : IAppSettings
{
readonly Configuration Config;
public AppSettingsFromFile(string path)
{
var fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = path;
Config = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
}
public string this[string key]
{
get
{
return Config.AppSettings.Settings[key].Value;
}
}
}
Hier erfahren Sie, wie Sie die Klasse verwenden.
IAppSettings AppSettings = new AppSettingsFromFile(@"c:\my-web-app-location\web.confg");
string connectionString = AppSettings["ConnectionString"];