如何分享App.config?

Yoa*_*. B 22 .net visual-studio

如何在Visual Studio解决方案中的多个项目之间共享/链接App.config或Web.config?

Enr*_*lio 36

在Visual Studio的解决方案资源管理器中的" 添加现有项"对话框中,可以将指向磁盘上另一个文件的链接添加到项目中.为此,您必须单击" 添加"按钮右侧的向下箭头,然后选择" 添加为链接".


naw*_*fal 9

微软的另一种方法:

使用<appSettings>元素的fileattribute 指定将定义公共<appSettings>元素的外部文件.

外部文件将具有与app.config文件相同的模式,但根节点必须是<appSettings> 而不是<configuration>.

创建通用配置文件:

  1. 在"文件"菜单上,指向"新建",然后单击"文件".
  2. 在"新建文件"对话框中,执行以下操作:

    一个.在"类别"窗格中,选择"常规".
    湾 在"模板"窗格中,选择"XML文件".
    C.单击"打开"按钮以创建新的通用配置设置文件.

  3. 添加一个新<appSettings>元素.

  4. <appSettings>使用<add>与使用任何普通app.config文件相同的方式添加节点内所需的常用配置设置.

  5. 保存配置文件.

在每个项目中指定公共配置文件

  1. 打开每个客户端项目的app.config文件.

  2. 导航到节点中的<appSettings>元素<configuration>.如果元素不存在,请添加一个新元素.

  3. 将新属性文件添加到<appSettings>元素,并将公共配置文件的相对路径指定为其值.
    客户端项目现在可以访问常用配置设置.

以下示例显示如何在外部文件中定义公共配置设置.

        <?xml version="1.0" encoding="utf-8" ?>
        <appSettings>
            <add key="commonSetting1" value="MyApplication1" />
            <add key="commonSetting2" value="MySetting" />
        </appSettings>
Run Code Online (Sandbox Code Playgroud)

以下示例说明如何在项目的app.config文件中指定公共配置文件的路径.

        <?xml version="1.0" encoding="utf-8" ?>
        <appSettings file=”c:\commonSettings.config”>
            <add key="myAppSpecificSetting" value="Setting1" />
        </appSettings> 
Run Code Online (Sandbox Code Playgroud)

如示例所示,客户端项目的app.config文件<appSettings>除了指向公共配置文件外,还可以在元素中指定其他设置.如果多次指定相同的设置,则使用指定的最后一个值.如果在公共配置文件和客户端项目app.config文件中指定了相同的设置,则使用公共配置文件中指定的值.


Cha*_*ana 5

首先,请记住,App.config或web.config对于在解决方案中由启动项目建立的"进程"中使用的任何项目中运行的所有代码都是可见的...即,如果您的解决方案有一个控制台应用程序和5个类库,或一个WinForms应用程序和4个类库,或一个WIndows服务和3个类库,或一个控制台应用程序用作启动项目,另一个控制台应用程序用作类库,然后您没有问题,配置app.config和所有引用的文件在所有项目中都可见.

其次,如果您将在解决方案中运行两个或更多单独的可执行进程(如Windows服务作为服务器,以及winforms客户端),那么如果您希望它们共享特定的配置设置,您可以将这些设置放入machine.config文件,虽然你应该小心这样做..而一些企业服务器团队皱眉...