查找当前配置文件的名称
Posted
技术标签:
【中文标题】查找当前配置文件的名称【英文标题】:Find the name of the current config file 【发布时间】:2011-02-06 17:19:36 【问题描述】:有没有办法从类库中找到当前应用程序的配置文件的名称(和路径)?
例如在 Web 应用程序中,这将是 web.config
,在 Windows 应用程序或服务中,这将是 myapp.exe.config
。
【问题讨论】:
【参考方案1】:试试这个:
AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
如果这不起作用,请添加对 System.Web 和 System.Configuration 的引用,然后试试这个:
if(HttpRuntime.AppDomainAppVirtualPath == null)
return ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None).FilePath;
else
return VirtualPathUtility.ToAbsolute("~/Web.config");
【讨论】:
谢谢。在第一次测试之后,第一种方法似乎适用于 Windows 服务和 Web 应用程序。 我从不立即接受答案(但我会接受),例如能够验证解决方案并让其他人有机会回答。【参考方案2】:使用Configuration.FilePath
:
获取此配置对象表示的配置文件的物理路径。
【讨论】:
是的,但是你需要先有一个“配置”元素......不幸的是没有“Configuration.CurrentElement”或类似的东西...... 我如何获得配置实例?以上是关于查找当前配置文件的名称的主要内容,如果未能解决你的问题,请参考以下文章
如何通过与之关联的目标名称或捆绑标识符来查找配置文件的名称?