代码之家  ›  专栏  ›  技术社区  ›  Mahesh

为dll配置文件

  •  4
  • Mahesh  · 技术社区  · 7 年前

    我们的应用程序在运行时从应用程序的根加载我们的自定义dll(这些dll正在实现一些接口),并通过反射执行方法。

    如果自定义dll必须从配置文件中读取一些值,则我们必须将这些配置设置复制到主应用程序的app.config文件中。

    有没有办法让每个自定义dll都有自己的名为.config的配置文件,并从这些文件本身读取其配置设置。

    3 回复  |  直到 17 年前
        1
  •  3
  •   marc_s    17 年前

    如果您在.NET 2.0或更高版本上,则可以手动告诉配置系统从所需的任何配置文件加载设置。

    ExeConfigurationFileMap exeMap = new ExeConfigurationFileMap();
    exeMap.ExeConfigFilename = "C:\Application\Default.config";
    
    Configuration exeConfig = ConfigurationManager.OpenMappedExeConfiguration(exeMap, ConfigurationUserLevel.None);
    

    现在你有了你的自定义“配置”对象,你可以参与它!:-)通过调用execonfig.getSection()或任何您喜欢的方法加载整个节。

    也可以在codeproject上的.net 2.0配置系统上查看这个优秀的三部分系列-强烈推荐!

    马克

        2
  •  1
  •   Maurice Flanagan    17 年前

    将dll加载到新的appdomain中并设置appdomainsetup.configurationfile。这将允许您为每个自定义dll创建单独的配置文件。

        3
  •  0
  •   Student for Life    17 年前

    我确信有一种方法可以在框架中做到这一点,只是我记不起来了。你要找的是每个程序集的配置文件,我记得读过一篇关于这个的文章 Per Assembly Configuration Files