如何在不发送电子邮件的情况下检查 SmtpClient 和凭据的运行状况?



有没有办法在代码中检查SmtpClient和NetworkCredential作为HealthCheck的一部分是否有效。 我不是特别想每 10 分钟生成一次电子邮件,但我想知道服务器是否响应迅速,更重要的是,在我们不知道的情况下,网络凭据尚未重置:-(

当前的代码块是这样的;但据我所知,这并没有从服务中发出任何调用。

public bool IsHealthy()
{
try
{
var smtp = new SmtpClient(this.options.SmtpHost, this.options.SmtpPort)
{
UseDefaultCredentials = false,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new NetworkCredential(
this.options.EmailUserName, 
this.options.EmailPassword,
this.options.EmailDomain)
};
// Should really be calling something in here?
smtp.Dispose();
return true;
}
catch
{
return false;
}
}

评论部分的家伙是正确的,之前有人问过 [我可以在调用客户端之前测试 SmtpClient 吗?发送((?

没有让我检查网络凭据,但至少知道 smtp 服务器可用。

最新更新