在app.config中设置日志文件路径

时间:2010-03-05 06:43:31

标签: c# asp.net app-config

我有一个要求,我必须将日志文件放在解决方案的同一目录中。那是我的解决方案放在[drive] \ work \ Project1 \ solution文件中。但我必须创建我的日志文件到[drive] \ work \ Project1 \ Log \ log.log。如何在app.config文件中设置它。 请帮我。提前谢谢......

1 个答案:

答案 0 :(得分:3)

如果您采用Visual Studio目录布局,那么您的程序将位于[drive] \ work \ Project1 \ bin \ Release \(或可能是\ Debug)中。并且您希望您的日志文件位于[drive] \ work \ Project1 \ Log。

目录中

该目录与[drive]\work\Project1\bin\Release\..\..\Log\

相同

因此,一种方法是获取执行程序的完整路径名,解压缩目录,然后附加.... \ Log。像这样:

using System.IO; // for Path class
using System.Windows.Forms;  // for Application.ExecutablePath

...

string GetLogFilePath()
{
    string ProgramPath = Path.GetDirectory(Application.ExecutablePath);
    string LogPath = Path.Combine(ProgramPath, @"\..\..\Log\");
    return LogPath;
}

如果您不想包含System.Windows.Forms,则可以改为包含System.Reflection并使用Assembly.GetExecutingAssembly()获取程序集的位置。位置。