SMTP服务器需要安全连接或客户端未经过身份验证

时间:2011-05-23 12:41:11

标签: asp.net web-config smtp gmail

  

SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.7.0必须首先发出STARTTLS命令。 k12sm3795394wby.16

     

说明:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。

     

异常详细信息:System.Net.Mail.SmtpException:SMTP服务器需要安全连接或客户端未经过身份验证。服务器响应为:5.7.0必须首先发出STARTTLS命令。 k12sm3795394wby.16

     

来源错误

我正在使用createUserWizard ..它在我使用设计器(VS2010)设置的属性中有一个邮件选项。当我使用代码它工作!,但有这个控制它不。我想知道为什么!!

这是我的web.config文件:

<system.net>
    <mailSettings>
        <smtp from="makovetskiyd@yahoo.co.uk">
            <network host="smtp.gmail.com" defaultCredentials="false"
             port="587" userName="**********" password="*****"/>
        </smtp>
    </mailSettings>
</system.net>

但我怀疑控件是否使用了该设置。

2 个答案:

答案 0 :(得分:22)

Gmail要求您使用安全连接。这可以在你的web.config中设置,如下所示:

<network host="smtp.gmail.com" enableSsl="true" ... />

答案 1 :(得分:5)

Gmail阻止您的SQL Server实例通过它发送电子邮件。一旦遇到错误,如果您登录gmail并尝试撰写邮件,它会通知您它阻止的访问权限。您只需告诉Gmail这是连续的,并允许将来从sqlserver登录。

这应该可以解决问题!