正在获取c#windows应用程序中的应用程序路径

本文关键字:应用程序 路径 c#windows 获取 | 更新日期: 2023-09-27 18:23:50

假设我有以下场景。我的应用程序位于

D: ''MyWinForm''

我有

D: ''MyWinForm''DAL

D: ''MyWinForm''BLL

D: ''MyWinForm''Program.cs

D: ''MyWinForm''Form1.cs

D: ''MyWinForm''App.config

D: ''MyWinForm''ErrorLog''ErrorLog.txt

在DAL文件夹(D:''MyWinForm''DAL)中,我有一个Dal.cs文件

D: ''MyWinForm''DAL''DAL.cs

在这个文件中,我有一个函数需要返回

"D:''MyWinForm''ErrorLog''ErrorLog.txt"此路径为字符串。

我在这里已经回答了很多问题。但找不到合适的答案

正在获取c#windows应用程序中的应用程序路径

您的大多数问题都无关紧要,因为您不应该关心实际的cs文件,编译它时无关紧要,看起来您可以进行

Path.Combine(AppDomain.CurrentDomain.BaseDirectory,"ErrorLog","ErrorLog.txt");

但请注意,并不是每个人都可以访问程序的目录,您可能希望使用应用程序数据文件夹

编辑:

将日志路径存储在app.config文件中是一种常见且良好的做法。然后,您可以消除日志路径相对于应用程序路径的问题。例如:

<?xml version="1.0" encoding="utf-8" ?>   
<configuration>    
  <appSettings>
    <add key="LogPath" value="C:'Logs"/>
  </appSettings>   
</configuration>

然后从代码中加载此路径,如下所示。

string logPath = ConfigurationManager.AppSettings["LogPath"];

现在您有了一个集中的地方来存储日志。

此外,我建议查看log4net。它是一个流行的.NET日志框架。


private string GetErrorLogPath()
{
    return Path.GetFullPath(@".'ErrorLog'ErrorLog.txt")
}

Path.GetFullPath