获取当前配置文件的文件名

时间:2011-05-04 19:17:08

标签: c# configuration app-config remoting

我认为这很简单,但我找不到答案。

我正在使用远程处理,我想在app.config中存储RemotingConfiguration。当我呼叫RemotingConfiguration.Configure时,我必须提供远程信息所在的文件名。所以......我需要知道当前配置文件的名称。

目前我正在使用它:

System.Reflection.Assembly.GetExecutingAssembly().Location + ".config"

但这仅适用于Windows应用程序,而不适用于Web应用程序。

是否有任何类可以为我提供当前配置文件的名称?

2 个答案:

答案 0 :(得分:62)

尝试AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

http://msdn.microsoft.com/en-us/library/system.appdomainsetup.configurationfile.aspx

答案 1 :(得分:8)

using System.Configuration;
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
Console.WriteLine(config.FilePath);

在奇怪的情况下,您有特定本地或漫游用户的单独配置文件,您也可以使用正确的ConfigurationUserLevel找到它们。对于Web应用程序,请使用

WebConfigurationManager.OpenWebConfiguration("~");