为什么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.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些