Get the file path of current application's config file

You can use the ConfigurationFile property on the SetupInformation for AppDomain.CurrentDomain.

This will get either the web.config or and app.config (yourprogram.exe.config) location.

AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

I've used

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);

without problems, but maybe there is some corner cases I don't know about...


To find the location of executing application

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

Don't know about web case.