Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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#_Logging_Model View Controller_Nlog - Fatal编程技术网

C# 如何使用NLog发送电子邮件?

C# 如何使用NLog发送电子邮件?,c#,logging,model-view-controller,nlog,C#,Logging,Model View Controller,Nlog,我正在使用NLog,而且我对日志记录非常陌生。我创建了日志文件,但不知怎的,我在发送电子邮件时遇到了问题。我按照所有的指示去做,但还是做不到 web.config中配置标记中的邮件设置: <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory" from="some@some.org"> <network host="localhost"/>

我正在使用NLog,而且我对日志记录非常陌生。我创建了日志文件,但不知怎的,我在发送电子邮件时遇到了问题。我按照所有的指示去做,但还是做不到

web.config中配置标记中的邮件设置:

<system.net>
<mailSettings>
  <smtp deliveryMethod="SpecifiedPickupDirectory" from="some@some.org">
    <network host="localhost"/>
    <specifiedPickupDirectory pickupDirectoryLocation="d:\tmp\email"/>
  </smtp>

</mailSettings>
</system.net>

而且我对设置和配置的位置也很困惑。谢谢。

正文是一种布局格式,不确定是否会处理${message}标记。将${message]更改为nlog.config中的布局名称,或将其保留为${message}${newline}默认值

你可以打开开关

将顶部XML父级更改为

<nlog internalLogFile="c:\log.txt" internalLogLevel="Trace">

这可能会让您了解这个问题。可能是服务器的身份验证问题或其他问题

由于您正在指定目标中的所有服务器信息,因此不需要web.config设置

不确定是否已修复,但您应该向目标添加timeout=“10000”,以便它关闭连接


在NLog for GMail中有一个非常好的例子,它可以工作

正文是一种布局格式,不确定它是否会处理${message}标记。将${message]更改为NLog.config中的布局名称,或者将其保留为${message}${newline}默认值

你可以打开开关

将顶部XML父级更改为

<nlog internalLogFile="c:\log.txt" internalLogLevel="Trace">

这可能会让您了解这个问题。可能是服务器的身份验证问题或其他问题

由于您正在指定目标中的所有服务器信息,因此不需要web.config设置

不确定是否已修复,但您应该向目标添加timeout=“10000”,以便它关闭连接


在NLog for GMail中有一个非常好的例子,非常感谢你。我尝试了你所说的东西,我仍在努力。我想这是一个身份验证问题。检查内部日志。非常感谢。我尝试了你所说的东西,我仍在努力。我想这是一个身份验证问题。切然后检查内部日志。请参阅
     Logger logger = LogManager.GetCurrentClassLogger();
     try{ //something }
     catch(Exception ex){  logger.Error(ex);  }
<nlog internalLogFile="c:\log.txt" internalLogLevel="Trace">