这是我的Web.config:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network defaultCredentials="true" enableSsl="true" host="smtp.gmail.com" port="25" userName="xxxxxxx@gmail.com" password="xxxxxxxxxxx"/>
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
我的方法:
public static void EmailVerification(string email, string nickname)
{
MailAddress from = new MailAddress("xxxxxxxxxxx", "xxxxxxxxxxxx");
MailAddress to = new MailAddress(email);
MailMessage message = new MailMessage(from, to);
message.Subject = "Test";
message.Body = "Test";
SmtpClient client = new SmtpClient();
try
{
client.Send(message);
}
catch(SmtpFailedRecipientException ex)
{
HttpContext.Current.Response.Write(ex.Message);
return;
}
}
Run Code Online (Sandbox Code Playgroud)
我的失败SmtpException:
Failure sending mail.
Run Code Online (Sandbox Code Playgroud)
的InnerException:
Unable to connect to the remote server
Run Code Online (Sandbox Code Playgroud)
我在本地测试它,但我想它应该工作.我必须在Windows Azure上运行它,我尝试过它也没有用.有什么我想念的吗?
基本身份验证和默认网络凭据选项是互斥的; 如果将defaultCredentials设置为true并指定用户名和密码,则使用默认网络凭据,并忽略基本身份验证数据.
使用
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network enableSsl="true" host="smtp.gmail.com" port="25" userName="xxxxxxx@gmail.com" password="xxxxxxxxxxx"/>
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9775 次 |
| 最近记录: |