MonoTouch(iOS)上的SmtpClient.Timeout,似乎没有任何影响,我做错了吗?

时间:2012-02-03 15:08:12

标签: ios xamarin.ios smtp timeout

我正在构建一个“测试”按钮来验证应用中的SMTP配置。

如果用户键入错误的端口号,将SSL打开/关闭为错误状态,或者键入有效域名,但是没有托管SMTP服务器,则应用程序挂起,等待超时

基本上,它找到了一台服务器,但无法连接到指定的端口。

在这种情况下,此超时似乎约为1分15秒。

我尝试像这样设置超时:

var client = new SmtpClient(hostname, port);
client.Timeout = 15000; // milliseconds

但超时仍然是1分15秒左右。

我还需要配置什么吗?

请注意,虽然我可以使用“SendAsync”来避免挂起,但我仍然希望在这种情况下使用稍低的超时。

1 个答案:

答案 0 :(得分:2)

这可能与DNS解析有关,done synchronously。您可以使用IP地址而不是主机名轻松确认,并查看超时是否接近预期的15秒。

如果是这种情况,那么可能的替代方案,即我在iOS下测试 可能使用Mono.Dns