将另一个项目的设置添加到 app.config

Posted

技术标签:

【中文标题】将另一个项目的设置添加到 app.config【英文标题】:Add settings from another project to app.config 【发布时间】:2011-03-15 23:29:48 【问题描述】:

我用 C# 编写了一个带有设置文件的应用程序(用于在编译时创建 app.config 文件)。此应用程序使用一个 C# DLL,它也有一个设置文件。

我从this post读到以下内容:

如果您构建一个引用您的 DLL 的项目,您将向该项目添加相同的 .settings 文件,这些设置将出现在应用程序的 app.config 文件中,并且 DLL 将能够读取这些值。如果这些值不在 app.config 中,则 dll 将使用默认值。

我观察到 DLL 存储默认值,这表明它应该这样做。我右键单击我的应用程序的项目并选择添加现有项目。然后我从我的 DLL 项目中找到了设置文件并将其添加到应用程序的项目中。我希望 DLL 设置文件和应用程序设置文件都包含在应用程序的 app.config 文件中。这样,应用程序的 app.config 文件将覆盖 DLL 中存储的默认值。不幸的是,这并没有发生。

那么,我的问题是在将DLL项目中的设置添加到应用程序项目后,如何让应用程序项目识别文件并在编译时将其设置添加到app.config文件中?

【问题讨论】:

.NET 配置系统的设计初衷不是为了能够使用多个配置文件 - 它的基本假设是将所有相关的配置条目放入主应用程序的配置中 我知道只能有一个配置文件。我的意图是将两个设置文件组合在一个配置文件中。一个设置文件来自与配置文件相同的项目,而另一个设置文件来自外部项目。 【参考方案1】:

我不确定你的意思。您是否尝试过以与以下类似的方式包含它?

<appSettings file="dataSettings.config"/>

【讨论】:

如果您发布代码或 XML,在文本编辑器中突出显示这些行,然后单击编辑器工具栏上的“代码”按钮 (101 010) 以很好地格式化和语法高亮吧!它尤其适用于 XML,否则它可能不会显示(就像您的行不可见).... 我的 app.config 文件由 C# 编译器自动生成。编译器读取 Settings.settings 文件并使用它生成 XML 以包含在 app.config 文件中。我的目标是设置一个 Settings.settings 文件(在 DLL 项目中),以便如果我在该 Settings.settings 文件中进行更改,该更改将导致 app.config 文件在两个位置都更新。我可以简单地在应用程序项目中创建 Settings.settings 文件的副本,但我试图避免每次调整设置时都需要更改两个文件。

以上是关于将另一个项目的设置添加到 app.config的主要内容,如果未能解决你的问题,请参考以下文章

可以将另一个项添加到现有的枚举类型中吗?

如何将另一个密钥添加到 vigenere 密码中

如何将另一个图像添加到滑块的拇指或如何添加两个拇指图像?

将列表保存到文件中,将另一个列表添加到同一文件中,然后在 google colab 上加载

将滤色器添加到图像的暗部分,将另一个滤色器添加到图像的亮部分?

如何将另一个类对象添加到列表中