获取程序根目录在.NET中是一项常见的需求,因为程序可能需要读取配置文件、提供给用户下载的文件等。下面我们将介绍.NET中获取程序根目录的3种常用方法。
1. 使用AppDomain.CurrentDomain.BaseDirectory
string baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
AppDomain.CurrentDomain.BaseDirectory
是获取当前应用程序域中加载的程序集的基目录,返回的路径不带斜杠。该路径是程序的启动目录,通常是包含exe文件的目录。当应用程序的启动方式是通过双击exe文件启动时,AppDomain.CurrentDomain.BaseDirectory
通常返回的是程序exe文件所在的目录,对于ASP.NET应用程序则返回ASP.NET应用程序的根目录。
2. 使用AppContext.BaseDirectory
string baseDirectory = AppContext.BaseDirectory;
AppContext.BaseDirectory
是.NET Framework 4.6及以上版本中新增加的方法,它和AppDomain.CurrentDomain.BaseDirectory
返回的值是相同的。但是在.NET Framework 4.5或之前的版本中是没有AppContext.BaseDirectory
方法的。
3. 获取入口程序集的位置
string entryAssemblyLocation = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
获取入口程序集的位置,需要使用Assembly
类中的GetEntryAssembly()
方法获取入口程序集,调用Location
属性可以获取入口程序集的完整路径,使用Path.GetDirectoryName()
方法可以获取入口程序集的所在目录路径。
使用以上任意一种方法均可获取程序根目录,我们可以根据实际情况选择最合适的方式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:.NET中获取程序根目录的常用方法介绍 - Python技术站