0

我使用这个 XML 设置了一个 TraceListener:

<add name="RuntimeDeploymentConsoleListener"
      type="System.Diagnostics.ConsoleTraceListener"
      initializeData="C:\Users\Administrator\Desktop\TraceSourceLogs.log">
</add>

然后我意识到initializeData属性是传递给指定类的构造函数的字符串。但是,构造函数ConsoleTraceListener需要一个Boolean. 那么为什么当它试图将该字符串转换为布尔值时,它不会在运行时抛出异常呢?

4

1 回答 1

0

web.config 中的类型强制很松散。它可能正在寻找 True 或 False,但没有找到等于它的值,它假设相反。

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

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

于 2015-05-26T02:03:53.937 回答