c# - 使用c#测试smtp邮件服务器的可用性

标签 c# asp.net-mvc-3 smtp ping

我有一个用 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/

相关文章:

c# - NServiceBus 基本消息发布器,无需 ravenDB

c# - ConcurrentBag<T> 得到重复项(似乎不是线程安全的)

c# - MVC3 Json函数隐藏特定属性

java - 通过 gmail 从 java 发送电子邮件时出现异常

python - 创建 Python 电子邮件(接收)服务器

scripting - 用于开发目的的虚拟 SMTP 服务器

c# - 在运行时动态转换控件类型

c# - 在 transactionScope 中删除用户时超时

asp.net-mvc-3 - MVC3 代码优先以及如何使用 LINQ2SQL

c# - 十进制值对价格无效。 MVC3