NLog.configファイルでtarget
を設定して、ユーザーアプリデータディレクトリにログファイルを作成するにはどうすればよいですか?
以下は、ファイルの目的の場所です。
C:\ Users\userid\AppData\Local ...\LogFile.txt
fileName
を次の方法で設定しようとしましたが、うまくいきませんでした。
target name="logfile" xsi:type="File" fileName="%APPDATA%/.../LogFile.txt"
target name="logfile" xsi:type="File" fileName="${APPDATA}/.../LogFile.txt"
target name="logfile" xsi:type="File" fileName="${%APPDATA%}/.../LogFile.txt"
次のようなターゲットを作成することでそれを実現できます。
<target name="logfile" xsi:type="File"
fileName="${specialfolder:folder=ApplicationData}/LogFile.txt"/>
ドキュメントは here にあります。
これがお役に立てば幸いです。
受け入れられた回答はAppData\Localディレクトリにログファイルを作成せず、代わりにAppData\Roamingディレクトリにログファイルを作成します。 OPからAppData\Localにログファイルを作成するに要求されたように、特別なフォルダーパスでLocalApplicationDataを使用する必要があります。
<target name="logfile" xsi:type="File"
fileName="${specialfolder:folder=LocalApplicationData}/ApplicationLogs/LogFile.txt"/>
Jaccoの答えに加えて、次のようにappdataに保存する可能性がある他のデータとは別にログを保持したい場合は、パスにフォルダー名を追加できます。
fileName="${specialfolder:folder=ApplicationData}/Logs/LogFile.txt"/>