如何在winforms上使用类库的应用程序设置?

时间:2011-01-25 14:37:42

标签: c# .net winforms app-config

如果我为我的主应用程序创建app.config,我可以使用它:

string test = Properties.Settings.Default.LibTest;

你可以在app.config上找到:

<applicationSettings>
<RManager.Properties.Settings>
  <setting name="LibTest" serializeAs="String">
    <value>ola lib</value>
  </setting>
</RManager.Properties.Settings>

问题是,如果我有一个类库,有没有办法使用以下方法访问相同的设置:

string libString = Properties.Settings.Default.LibTest;

如果没有,哪种解决方案最适合从主应用程序访问设置?

2 个答案:

答案 0 :(得分:3)

如果您的libruary可以从主应用程序获取属性,我会说这是不正确的。我建议如下:

在libruary(或某些常见的lib)中创建另一个静态类(f.e.ConsetsManager),并在应用程序启动后将appconfig中的数据填充到该公共静态类(SettingsManager)。您可以在应用程序和dll中使用该类(SettingsManager)属性。

如果您的dll和您的应用程序有很多绑定,那么您应该考虑将源代码从dll转换为exe应用程序,在这种情况下,您将能够访问app.config设置。

答案 1 :(得分:0)

基本上,您需要公开设置并从其他程序集访问它们。

以下是我之前几个类似问题的答案: