打成dll,要有App.config文件内容

项目打dll,但有App.config 文件,要用到别人的dll而它的dll要用到App.config 文件,
如何重写和指定 别人的dll中的读取App.config 文件内容

img

dll用的 App.config 如果没有指定特定文件那就是是你启动程序的 config

【以下回答由 GPT 生成】

问题解答:

在将项目打包成dll文件时,可以通过如下步骤包含App.config文件,并重写和指定别人的dll中读取App.config文件的内容。

  1. 添加App.config文件到项目中,如果已经存在,则跳过此步骤。

  2. 右击项目,选择"添加现有项",找到并选择App.config文件,将其添加到项目中。

  3. 右击App.config文件,选择属性,将"复制到输出目录"设置为"如果较新则复制",这将保证打包后的dll文件中包含App.config文件。

  4. 找到别人的dll文件,并查看其引用的App.config文件的路径。

  5. 使用ConfigurationManager类读取别人的dll文件中的App.config文件内容,并进行相应的修改。

下面是示例代码:

using System.Configuration;

public class MyDllWrapper
{
    public void MyMethod()
    {
        // 读取别人的dll文件中的App.config文件内容
        ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
        configFileMap.ExeConfigFilename = "path/to/otherDll.config"; // 替换成别人的dll文件的App.config路径

        // 加载配置文件
        Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

        // 修改和重写App.config文件的内容
        // ...

        // 保存修改后的配置
        config.Save(ConfigurationSaveMode.Modified);
    }
}

在代码中,需要将"path/to/otherDll.config"替换成别人的dll文件的App.config文件的路径。

请注意,尽管我们在打包的dll中包含了App.config文件,但是在运行时,别人的dll文件仍然会读取自己的配置,因此我们需要通过修改和重写App.config文件的内容来达到我们的目的。

希望以上解决方案对您有帮助。如果您还有任何问题,请随时提问。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^