Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# NLog不保留空格_C#_Xml_String Formatting_Nlog - Fatal编程技术网

C# NLog不保留空格

C# NLog不保留空格,c#,xml,string-formatting,nlog,C#,Xml,String Formatting,Nlog,我正在尝试为我的C#应用程序配置NLog。我已经让日志工作,但它似乎有一个自己的想法关于空白。这是我的NLog.config: <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLo

我正在尝试为我的C#应用程序配置NLog。我已经让日志工作,但它似乎有一个自己的想法关于空白。这是我的
NLog.config

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
      throwExceptions="false"
      internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log" >

  <variable name="brief" 
            value="${longdate} | ${level} | ${logger} |: ${message}" />
  <variable name="verbose" 
            value="${longdate} | ${machinename} | ${processid} | ${processname} | ${level} | ${logger} |: ${message}" />

  <targets>
    <target name="myLog" xsi:type="File" fileName="myLog.txt" layout="${verbose}" />
    <target name="console" xsi:type="Console" layout="${brief}" />
  </targets>

  <rules>
    <logger name="*" minlevel="Debug" writeTo="myLog" />
    <logger name="*" minlevel="Info" writeTo="console" />
  </rules>
</nlog>

日志的输出当前如下所示:

2016-05-19 12:08:00.0302 | DEBUG | Namespace.ClassName |:这里有一些日志消息

出于某种原因,NLog正在清除我在
目标
布局
属性中定义的空间。我希望日志条目的外观是:

2016-05-19 12:08:00.0302 | DEBUG | Namespace.ClassName |:这里有一些日志消息

如何让NLog保留
布局属性中的空格?


我还尝试将
级别设置为固定长度,并使用如下填充方式:
${padding:padding=5,fixedlength=true:${level:uppercase=true}}
,如中所述,但仍然不走运。

我发现,当解决方案的路径中有
字符时,NLog的效果不好。重命名了路径并重新开始工作。

文件和控制台输出中是否都出现这种情况?您使用的是哪个版本的NLog?@Amy是的,它在文件和控制台中都有发生。我使用的是.Hm中最新的版本(4.3.4),无法使用该版本和您的配置进行复制。如果你创建一个新的项目并使用这个配置,它也会在那里发生吗?@Amy我会试一试并报告。谢谢。@Amy我的代码有些问题……不确定是什么问题,但我能够获得一个全新的项目来使用NLog而没有问题……但问题仍然存在于我当前的项目中。哦,好吧,我想我只需要继续挖掘。谢谢你的帮助。