PRISM模块app.config配置设置

时间:2012-01-26 14:02:11

标签: c# wpf configuration module prism

我们开始使用prism构建模块化wpf应用程序。

我们希望允许每个模块具有特定配置 - 应用设置/连接字符串等。

我们目前通过将shell项目中的所有配置指定为短期修复来完成工作。显然,这打破了我们正在寻找的模块化方法 - 任何人都能指出我正确的方向吗?

感谢。

3 个答案:

答案 0 :(得分:2)

您可以尝试将每个特定模块的app.config重命名为YourModule.Name.config,并使用以下代码在模块中加载该文件:

var filename = Assembly.GetExecutingAssembly().Location;
var configuration = ConfigurationManager.OpenExeConfiguration(filename);
if (configuration != null)
    _setting = configuration.AppSettings.Settings["SettingName"].Value;

也许你应该玩一些文件名(比如最后添加.config),我现在无法检查。

答案 1 :(得分:1)

我写了一篇博文,解决了你想要解决的类似问题。 希望它有所帮助。

http://www.thedailyomelette.com/2013/02/maintain-multiple-configs.html

答案 2 :(得分:0)

在基础结构项目中有一个接口IConfigurationManager。创建一个ConfigurationManger项目,该项目可以处理与配置文件中的模块相对应的设置部分。在应用程序中使用IConfigurationManager注册此配置管理器。每个模块都会注入configurationmanager实例并读/写配置值。

class MyModule(IConfigurationManager config, ....)
{
}