我有一个名为TechReader
. 它的配置文件是TechReader.exe.config
. 配置的某些部分保存在其他配置文件中。所以我从 exe.config 中创建的配置部分引用该配置文件。
<TechReader.ProviderConfiguration file="localProvider.config"/>
现在我想使用反射加载我的应用程序的整个配置。我使用这样的代码。
Assembly techReaderAssembly = Assembly.GetAssembly(typeof(TechReaderStarter));
ConfigurationManager.OpenExeConfiguration(techReaderAssembly .Location);
TechReaderStarter
类在其输出是 Windows 应用程序而不是库的项目中定义。
当我使用上面的代码时,我得到TargetInvocationException
并且ConfigurationErrorsException
- 方法是否正确?
- 是否会
OpenExeConfiguration
加载通过合并 exe.config 和其他引用的配置文件生成的最终配置? - 我怎样才能实现这些目标?
注意:我想使用这个 Windows 应用程序作为 Windows 服务安装。我正在尝试读取类中的配置ServiceInstaller
(继承的类ServiceInstaller
),以便在服务配置中提到的服务名称等详细信息可用于installutil
. 为此,我必须使用反射来获取服务的确切配置。