2010-07-14 59 views
5

我用C#编写了一个应用程序,其中包含一个设置文件(用于在编译时创建app.config文件)。这个应用程序使用一个C#DLL,它也有一个设置文件。将另一个项目的设置添加到app.config

我读this post如下:

如果你建立了一个项目,引用您的DLL,你会同样.settings文件添加到该项目和这些设置会出现在app.config文件应用程序和DLL将能够读取这些值。如果这些值不在app.config中,则dll将回退到默认值。

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

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

+2

复制并粘贴?? – 2010-07-14 16:55:02

+0

.NET配置系统没有设计和打算能够使用多个配置文件 - 它的基本假设是,你会把所有相关的配置条目进入主应用程序的配置 – 2010-07-14 16:59:38

+0

我明白,只能有一个配置文件。我的意图是将两个设置文件合并到一个配置文件中。一个设置文件来自与配置文件相同的项目,而另一个设置文件来自外部项目。 – Brian 2010-07-14 17:10:14

回答

1

我不确定你的意思。你有没有尝试用类似于以下的方式来包含它?

<appSettings file="dataSettings.config"/> 
+1

如果您发布代码或XML,请**在文本编辑器中突出显示这些行,然后单击编辑器工具栏上的“代码”按钮(101 010)以精确地格式化和语法突出显示它!尤其是对于XML,因为否则它可能只是不显示出来(就像你的代码行不可见)...... – 2010-07-14 17:09:40

+1

我的app.config文件是由C#编译器自动生成的。编译器读取Settings.settings文件并使用它来生成XML以包含在app.config文件中。 我的目标是设置一个Settings.settings文件(在DLL项目中),以便如果在Settings.settings文件中进行更改,更改将导致app.config文件在两个位置都更新。我可以简单地在应用程序项目中创建Settings.settings文件的副本,但我试图避免每次调整设置时都需要更改两个文件。 – Brian 2010-07-14 17:21:24

相关问题