2013-08-16 37 views
2

我使用SmtpClient发送邮件。我如何处理SmtpClient。我正在使用.NET 3.5。如何在.NET 3.5中配置SmtpClient?

try 
    { 
     smtpClient.Send(message); 
     Log.WriteSpecialLog("smtpClient mail sending try success", ""); 
    } 
     catch (Exception ee) 
    { 
     Log.WriteSpecialLog("smtpClient mail sending try Failed : " + ee.ToString(), ""); 
     return false; 
    } 

回答

1

对于.NET 3.5,无法正确配置SmtpClient是一个已知问题。 http://connect.microsoft.com/VisualStudio/feedback/details/146711/smtp-never-sends-the-quit-command

你的问题是类似这样的:Properly disposing resources used by SmtpClient

的问题已得到修复在.NET 4.0中http://msdn.microsoft.com/en-us/library/system.net.mail.smtpclient(v=vs.100).aspx并为此(和许多其他reasson),这将是advisible更新.NET框架操作(虽然我个人知道有时候升级是个问题)。

但是,如果你真的想要处置SmtpClient,你可以让班级自己处理。但我不知道SmtpClient的效果如何。 http://forums.asp.net/t/383218.aspx/1 http://msdn.microsoft.com/en-us/library/fs2xkftw.aspx

作为一个方面说明,我劝你处理渔获SmtpFailedRecipientsException,不能治疗例外通​​用。 InnerException中的SmtpStatusCode为您提供重要信息。

+0

我已经写了赶上内部的异常。看看会发生什么问题 – JIKKU

+0

这实际上并没有回答这个问题。被困在3.5中,我能做什么?实际发送QUIT消息所需的所有相关属性都不可访问(内部),因此即使是子类化也无法访问它们。 – Nyerguds