Ответ 1
Попробуйте AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
https://docs.microsoft.com/en-us/dotnet/api/system.appdomainsetup.configurationfile
Я бы подумал, что это будет просто, но я не могу найти ответ.
Я использую remoting, и я хочу сохранить RemotingConfiguration в app.config. Когда я звоню RemotingConfiguration.Configure
, я должен указать имя файла, в котором находится информация о расстоянии. Итак... Мне нужно знать имя текущего файла конфигурации.
В настоящее время я использую это:
System.Reflection.Assembly.GetExecutingAssembly().Location + ".config"
Но это работает только для приложений Windows, а не для веб-приложений.
Нет ли класса, который может предоставить мне имя текущего файла конфигурации?
Попробуйте AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
https://docs.microsoft.com/en-us/dotnet/api/system.appdomainsetup.configurationfile
using System.Configuration;
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
Console.WriteLine(config.FilePath);
В нечетном случае, когда у вас есть отдельные файлы конфигурации для определенных локальных или перемещаемых пользователей, вы также можете найти их с помощью правильного ConfigurationUserLevel. Для веб-приложений используйте
WebConfigurationManager.OpenWebConfiguration("~");