【发布时间】:2019-07-05 09:20:15
【问题描述】:
我正在使用 nlog 通过电子邮件跟踪错误 - 所有配置都存储在 web.config 中。我正在尝试在 nlog 邮件部分中将 appSetting 用于密钥 enableSsl,但没有考虑到此特定密钥(但它适用于其他密钥,例如:smtpServer、from、to、...)
已安装以下软件包:
NLog<br/>
NLog.Extended // required to use appSetting<br/>
Nlog.Targets.Syslog<br/>
Nlog.Web<br/>
文档:
Mail-target
环境是 C# .NET
它崩溃了:enableSsl="${appsetting:Mail.Ssl.Enabled}"
它适用于:enableSsl="False"
web.config:
<appSettings>
<add key="Mail.Server" value="mail.myserver" />
<add key="Mail.Server.Port" value="25" />
<add key="Mail.Ssl.Enabled" value="False" />
<add key="Mail.Credentials.User" value="" />
</appSettings>
...
<nlog ..>
<targets>
<target name="mail" xsi:type="Mail" html="true" replaceNewlineWithBrTagInHtml="true" enableSsl="${appsetting:Mail.Ssl.Enabled}" smtpServer="${appsetting:Mail.Server}" from="${appsetting:Mail.From}" to="${appsetting:Mail.To.Error}" subject="Error on my app" layout="${message}..." />
</target>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="file" />
<!--<logger name="*" minlevel="Info" writeTo="syslog" />-->
<logger name="*" minlevel="Error" writeTo="mailBuffer" />
<logger name="*" minlevel="Info" writeTo="database" />
</rules>
</nlog>
nlog-internal.log:
在属性上设置“${appsetting:Mail.Ssl.Enabled}”时出错 “enableSsl”异常:NLog.NLogConfigurationException:错误时 在邮件目标 [mail] 上设置属性“EnableSsl”---> System.FormatException: ${appsetting:Mail.Ssl.Enabled} 无效 布尔值。 ---> System.FormatException:字符串不是 被识别为有效的布尔值。 在 System.Boolean.Parse(字符串值) 在 System.ComponentModel.BooleanConverter.ConvertFrom(ITypeDescriptorContext 上下文、CultureInfo 文化、对象值) --- 内部异常堆栈跟踪结束 --- 在 System.ComponentModel.BooleanConverter.ConvertFrom(ITypeDescriptorContext 上下文、CultureInfo 文化、对象值) 在 NLog.Internal.PropertyHelper.TryTypeConverterConversion(类型类型,字符串值,对象和新值) 在 NLog.Internal.PropertyHelper.SetPropertyFromString(对象 obj,字符串 propertyName,字符串值,ConfigurationItemFactory 配置项目工厂) --- 内部异常堆栈跟踪结束 --- 在 NLog.Internal.PropertyHelper.SetPropertyFromString(对象 obj,字符串 propertyName,字符串值,ConfigurationItemFactory 配置项目工厂) 在 NLog.Config.LoggingConfigurationParser.ConfigureObjectFromAttributes(对象 targetObject, ILoggingConfigurationElement 元素,布尔值 忽略类型)
【问题讨论】:
-
System.FormatException: String was not recognized as a valid Boolean显示您问题的答案,您应该将其转换为布尔值
标签: c# asp.net email logging nlog