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

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

概述我可以同时使用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" 我可以同时使用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="[email protected]"/>    <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.

总结

以上是内存溢出为你收集整理的为什么System.Net.Mail在System.Web.Mail工作的地方失败全部内容,希望文章能够帮你解决为什么System.Net.Mail在System.Web.Mail工作的地方失败所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1140290.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存