微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么System.Net.Mail在System.Web.Mail工作的地方失败

我可以同时使用System.Net.Mail和System.Web.Mail与GMail一起工作,但是我不能让它们兼顾smtp.att.yahoo.com.

我从自己的Web.config获取SMTP设置.使用System.Web.Mail发送时,这些设置有效,但System.Net.Mail失败.

<add key="SmtpServer" value="smtp.att.yahoo.com"/>
    <add key="SmtpServerAuthenticateUser" value="ctrager@sbcglobal.net"/>
    <add key="SmtpServerPort" value="465"/>
    <add key="SmtpUseSSL" value="1"/>
    <add key="SmtpServerAuthenticatePassword" value="MY PASSWORD"/>

以下是抓取我的设置并与GMail一起使用的代码,使用att.yahoo失败:

SmtpClient smtp;

        if (!string.IsNullOrEmpty(Util.get_setting("SmtpServer","")))
        {
           smtp = new SmtpClient(Util.get_setting("SmtpServer",""));
        }
        else
        {
           smtp = new SmtpClient();
        }


        if (!string.IsNullOrEmpty(Util.get_setting("SmtpServerAuthenticatePassword","")))
           smtp.Credentials = new System.Net.NetworkCredential(
               Util.get_setting("SmtpServerAuthenticateUser",""),Util.get_setting("SmtpServerAuthenticatePassword",""));

        if (!string.IsNullOrEmpty(Util.get_setting("SmtpServerPort","")))
           smtp.Port = int.Parse(Util.get_setting("SmtpServerPort",""));

        if (Util.get_setting("SmtpUseSSL","0") == "1")
           smtp.EnableSsl = true;

        smtp.Send(message);

这是我的问题吗?

http://blogs.msdn.com/webdav_101/archive/2008/06/02/system-net-mail-with-ssl-to-authenticate-against-port-465.aspx

解决方法

我已经学到了答案.答案是:

因为System.Net.Mail不支持“隐式”SSL,只支持“显式”SSL.

原文地址:https://www.jb51.cc/html/225380.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐