C# 使用gmail smtp通过asp.net发送邮件时出现操作超时错误

C# 使用gmail smtp通过asp.net发送邮件时出现操作超时错误,c#,asp.net,smtp,sendmail,C#,Asp.net,Smtp,Sendmail,我正在使用下面的代码。。提交表单后,我发现以下错误: 错误:System.Net.Mail.SmtpException:操作已超时。在 System.Net.Mail.SmtpClient.Send(MailMessage)位于 咨询.注册.按钮1\u点击1(对象发送者,事件参数e)进入 G:\servetechsolutions\Consultancy\Registration.aspx.cs:line 48Your 代码: 所以要么不指定值(默认值为100秒),要么给出更多值 尝试将smtp

我正在使用下面的代码。。提交表单后,我发现以下错误:

错误:System.Net.Mail.SmtpException:操作已超时。在 System.Net.Mail.SmtpClient.Send(MailMessage)位于 咨询.注册.按钮1\u点击1(对象发送者,事件参数e)进入 G:\servetechsolutions\Consultancy\Registration.aspx.cs:line 48Your

代码:

所以要么不指定值(默认值为100秒),要么给出更多值


尝试将smtp端口更改为587:

smtp.Port = 587;

正如Nadson所说,正确的端口是587,但要进行身份验证,还需要允许从gmail帐户中不太安全的应用程序进行访问。试试看


它对我有用,希望有帮助。

为了清楚起见,是这样一行:
smtp.Credentials=new System.Net.NetworkCredential(“username@gmail.com“,”密码“)用您的凭证硬编码,还是它实际读取“username@gmail.com“,”password“发件人字段中的电子邮件地址是否与传递给NetworkCredential对象的电子邮件地址相同?您是否也尝试过使用端口587而不是端口465?谷歌也将该端口用于SMTP
SmtpClient.TimeOut value is in milli seconds. Default value is 100,000 (100 seconds). 
smtp.Port = 587;