Получить путь к файлу текущего файла конфигурации приложения

Причина, по которой я спросил этот вопрос, заключается в том, что я хотел создать вспомогательный класс для создания экземпляра Remoting и хотел передать соответствующий файл app.exe.config(или веб-сайт .config) путь к методу RemotingConfiguration.Configure, в зависимости от вызывающего.

Есть ли способ получить имя файла конфигурации для как для Win, так и для веб-приложений, не проверяя, является ли приложение Web или WinForms?

Ответ 1

Я использовал

string folder = System.Web.HttpContext.Current != null ?
    System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_data") :
    System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);

без проблем, но, возможно, есть некоторые угловые случаи, о которых я не знаю...

Ответ 2

Вы можете использовать свойство ConfigurationFile в SetupInformation для AppDomain.CurrentDomain.

Это позволит получить расположение web.config или app.config(yourprogram.exe.config).

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

Ответ 3

Чтобы найти место выполнения приложения

System.Reflection.Assembly.GetExecutingAssembly().Location;

Не знаю о веб-футляре.