构建后修改WebHost配置,以添加新添加文件的内容

时间:2018-11-08 16:48:48

标签: c# asp.net-core

我想将字段添加到我在WebHost执行期间提供给我的IConfiguration中,而不仅仅是在启动时。

我有一些文件,每个文件都为我提供了一个不同数据库的连接参数。在启动时,我将这些文件加载​​到配置构建器中,以便能够使用这些信息连接到发送给服务的请求所指定的数据库。

但是如果我在运行时得到新文件,我希望能够做出反应。这样,我设置了FileSystemWatcher来监视那些新文件可能出现的文件夹。我试图读取新文件并将键/值对添加到配置中,但是它似乎没有在本地上下文之外注册更改:

IConfiguration _config;

[...]

foreach (KeyValuePair<string, string> entry in readFile)
{
    _config[entry.Key] = entry.Value;
    Console.WriteLine(_config[entry.Key]);
}

这确实更改了本地上下文中_config的内容(Console.WriteLine(_config[entry.Key])显示正确的结果)。但是,如果我尝试从处理“检测到新文件”事件的函数外部(例如,在API控制器中)读取它,则只会得到一个空字符串。

0 个答案:

没有答案