Veo que hay algunas formas de obtener la ruta de la carpeta de la aplicación:
Application.StartupPath
System.IO.Path.GetDirectoryName( System.Reflection.Assembly.GetExecutingAssembly().Location)
AppDomain.CurrentDomain.BaseDirectory
System.IO.Directory.GetCurrentDirectory()
Environment.CurrentDirectory
System.IO.Path.GetDirectoryName( System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)
System.IO.Path.GetDirectory(Application.ExecutablePath)
¿Cuál es la mejor manera dependiendo de la situación?
IHostEnvironment.ContentRootPath
, al que se accede a través de una IHostEnvironment
dependencia inyectada (que contiene otras cosas útiles).