我有一个用 C# 编写的 MVC3 Web 应用程序。我正在使用 McvMailer 从应用程序内发送电子邮件,一切正常。
我遇到的问题是我们的 smtp 服务器不在托管应用程序的 Web 服务器附近,并且有时 smtp 服务器可能不可用。
在为用户提供发送电子邮件的选项之前,我需要能够检测 smtp 服务器是否可用。到目前为止,我想出的最好的方法是使用@John Leidegren在this中的答案来ping smtp服务器。发布。
但是,似乎是路由器响应 ping,而不是 smtp 服务器。请记住,服务器不可用的主要原因是互联网连接失败,如果必须的话,我可能可以接受这个解决方案,但如果我能在尝试之前确保 smtp 服务的可用性,那就太好了发送电子邮件。
有什么想法吗?
最佳答案
是的,ping 是一个好的开始,但要确定 SMTP 网关是否可用,请通过 SMTP 端口发出 HELO 命令。
我会尽力找到一个好的例子。
编辑:
你很幸运。这是用 C# 编写的完整 TELNET 客户端。 https://www.nuget.org/packages/Telnet
关于c# - 使用c#测试smtp邮件服务器的可用性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10815251/