Asp.net 通用(EXE/Web).NET配置读取器

Asp.net 通用(EXE/Web).NET配置读取器,asp.net,.net,configuration,exe,Asp.net,.net,Configuration,Exe,我需要编写一个.NET 4.5组件,它可能被.EXE或Web应用程序使用。此组件有许多要提供的配置参数-相应地在main app.config或web.config中。 是否有读取配置的通用API或至少有一种确定模式的方法?对于App.config(桌面应用程序,foo.exe.config),请使用: 对于Web.config,您需要使用: 把这两个都抽象出来,你就被涵盖了 为了确定您是否处于ASP.NET环境中,我在过去使用了System.Web.Hosting.HostingEnvir

我需要编写一个.NET 4.5组件,它可能被.EXE或Web应用程序使用。此组件有许多要提供的配置参数-相应地在main app.config或web.config中。 是否有读取配置的通用API或至少有一种确定模式的方法?

对于App.config(桌面应用程序,foo.exe.config),请使用:

对于Web.config,您需要使用:

把这两个都抽象出来,你就被涵盖了


为了确定您是否处于ASP.NET环境中,我在过去使用了
System.Web.Hosting.HostingEnvironment.IsHosted

桌面和Web应用程序中的
System.Configuration.Abstracts
库。您可以使用nuget安装它:

install-package System.Configuration.Abstractions
上有文档,但简而言之,如果使用
ConfigurationManager
WebConfiguration Manager
,则可以使用
System.Configuration.Abstractions.ConfigurationManager.Instance
(或使用ICConfiguration Manager并注入实例)