ConsoleTraceListener(Boolean) -传入字符串

本文关键字:字符串 Boolean ConsoleTraceListener | 更新日期: 2023-09-27 17:50:50

我使用以下XML设置了一个TraceListener:

<add name="RuntimeDeploymentConsoleListener"
      type="System.Diagnostics.ConsoleTraceListener"
      initializeData="C:'Users'Administrator'Desktop'TraceSourceLogs.log">
</add>
然后我意识到initializeData属性是传递给指定类的构造函数的字符串。然而,ConsoleTraceListener的构造函数取Boolean。那么,当它试图将该字符串转换为布尔值时,为什么不在运行时抛出异常呢?

ConsoleTraceListener(Boolean) -传入字符串

web类型强制转换。配置是松散的。它可能正在寻找True或False,但没有找到与它相等的值,它假设相反。

很可能是在使用Convert。ToBoolean,它将尝试转换多个值而不抛出异常:

参考:https://msdn.microsoft.com/en-us/library/86hw82a3 (v = vs.110) . aspx