我在下面有一个配置和一个关系运算符'<'似乎没有转义,因为它输出错误XML element is not closed
。 In documentation他们有一个'< ='的例子,它也不起作用。什么有趣,'>'工作良好。我错过了什么吗?
<logger name="*" minlevel="Trace" writeTo="logFile">
<filters>
<when condition="contains('${logger}','Domain.Messaging.') and level < LogLevel.Warn" action="Ignore" />
</filters>
</logger>
答案 0 :(得分:3)
我错过了什么吗?
是的,您没有考虑到这是XML,其中<
需要进行转义。你想要:
<logger name="*" minlevel="Trace" writeTo="logFile">
<filters>
<when condition="contains('${logger}','Domain.Messaging.') and level < LogLevel.Warn" action="Ignore" />
</filters>
</logger>
的第2.4节
&符号(
&
)和左尖括号(<
)不得以字面形式出现,除非用作标记分隔符,或用于注释,处理指令或CDATA部分。如果在其他地方需要它们,则必须分别使用数字字符引用或字符串&
和<
对其进行转义。