编程语言
首页 > 编程语言> > c# – 如何获取其他应用程序的app.config并进行修改

c# – 如何获取其他应用程序的app.config并进行修改

作者:互联网

我有两个Windows应用程序.例如,FormA和FormB

FormA的app.config如下所示

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

  <appSettings>

    <add key="company" value="DSRC"/>

    </appSettings>

<connectionStrings>

<add name="test" connectionString="Testing Connection String"/>

</connectionStrings>

</configuration>

现在我有另一个名为Form B的应用程序.

我想将表单A的appsettings和connectiontrings检索到表单B.

此外,我应该能够修改这些appsettings和连接字符串,并将其保存到表单A.

我知道如何检索appsettings,以及相同应用程序的连接字符串并进行修改.

但是我如何获得其他一些应用程序并修改它们.

请告诉我.

实际上我在一个设置下运行了4个Windows服务,一个web服务和一个wcf服务以及一个应用程序.
所有这些都有不同的app.configs,包括不同的appsettings和不同的连接字符串.
我应该创建一个Windows应用程序,它将检索每个设置,然后相应地保存它.

我试过这个级别

ExeConfigurationFileMap filename= new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = @"D:\Home\FormA\FormA\bin\Debug\FormA.exe.config";


Configuration config =
   ConfigurationManager.OpenMappedExeConfiguration(filename,
   ConfigurationUserLevel.None);

但是刚刚被击中,我只是不知道如何继续前进(声音愚蠢吧!)

任何人都可以帮助我继续前进.

问候
cmrhema

解决方法:

            ExeConfigurationFileMap fileMap2 
                = new ExeConfigurationFileMap();
            fileMap2.ExeConfigFilename = @"OtherFile";

            Configuration config2 =
              ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);

            ConnectionStringSettings newSettings = 
                config.ConnectionStrings.ConnectionStrings["oldSConString"];

            ConnectionStringsSection csSection 
                = config2.ConnectionStrings;

            csSection.ConnectionStrings.Add(newSettings);                
            config2.Save(ConfigurationSaveMode.Modified);

VS2005 C# Programmatically change connection string contained in app.config

标签:c,asp-net-3-5
来源: https://codeday.me/bug/20190701/1343529.html