Mar*_*kus 8 .net c# configuration configuration-files
我需要在修改后重新加载配置文件.如何使用appdomains完成此操作?代码示例很有用.
Jay*_*van 10
假设您有以下配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="test" value="1" />
</appSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)
让我们先尝试一下天真的方法.以下应用程序将尝试获取每秒appSetting命名test一次的值,并打印其值:
static void Main(string[] args)
{
while(true)
{
Console.WriteLine(ConfigurationManager.AppSettings["test"]);
Thread.Sleep(1000);
}
}
Run Code Online (Sandbox Code Playgroud)
可惜!在运行时,您会注意到它会继续打印1,并且不会进行任何更改.
如果您将代码更新为以下内容,它将解决此问题,并且只要您更改它就会获取更改:
static void Main(string[] args)
{
while(true)
{
ConfigurationManager.RefreshSection("appSettings");
Console.WriteLine(ConfigurationManager.AppSettings["test"]);
Thread.Sleep(1000);
}
}
Run Code Online (Sandbox Code Playgroud)