2012-05-16 35 views
21

我使用一個網站項目中,我添加NLOG從的NuGet,並用以下NLOG配置:NLOG沒有創造相對於網站的項目文件

<?xml version="1.0" encoding="utf-8" ?> 
<nlog autoReload="true" 
     throwExceptions="true" 
     xmlns="http://www.nlog-project.org/schemas/NLog.xsd" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <targets> 
     <target name="logfile" xsi:type="File" fileName="log.txt" /> 
    </targets> 

    <rules> 
     <logger name="*" minlevel="Info" writeTo="logfile" /> 
    </rules> 
</nlog> 

我跑的ProcessMonitor和它表明NLOG試圖創建在IISExpress文件夾中的log.txt而不是我的網站項目文件夾。

C:\ Program Files文件(x86)的\ IIS快遞\ log.txt的

我怎樣才能讓NLOG把我的日誌文件,log.txt,在我的網站項目的文件夾,而不是IISExpress文件夾?

回答

42

我們想通了。

添加${basedir}到文件名

filename="${basedir}/log.txt" 
+0

順便說一句,這不應該被任何需要的更多;從版本4.3開始,相對路徑應該相對於'$ {basedir}'來計算。 Tempus fugit。 –