c#未收到gmail发送邮件

时间:2017-03-16 12:29:16

标签: c# email gmail

我在收到邮件时遇到问题!

我用outlook,yahoo,gmx对它进行了测试,而且我从我的工具中得到了邮件,但没有收到我的Gmail邮件。有人有想法吗?

mtpClient clientxy = new SmtpClient("smtp.mydomain.com");
clientxy.Port = 25;
clientxy.EnableSsl = false;
clientxy.Timeout = 3600;
clientxy.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
clientxy.UseDefaultCredentials = false;
NetworkCredential Credentials = new NetworkCredential("noreply@mydomain.com", "PWD");
clientxy.Credentials = Credentials;
MailMessage msg = new MailMessage("noreply@mydomain.com", text_Email.Text);
msg.BodyEncoding = UTF8Encoding.UTF8;
msg.Subject = "Subject";

string htmlBody;
msg.IsBodyHtml = true;
htmlBody = "<html>---html code";
msg.Body = htmlBody;

Attachment inline = new Attachment(@"file.xml");
inline.ContentDisposition.Inline = true;
msg.Attachments.Add(inline);
clientxy.Send(msg);

这里的PHP代码这项工作

$mail = new PHPMailer();
$mail->isSMTP();
//$mail->SMTPDebug = 2;
$mail->SMTPAuth = TRUE;
$mail->Host     = "smtp.mydomain.com";
$mail->Port     = 25;
$mail->Username = "noreply@mydomain.com";
$mail->Password = "";
$mail->SetFrom("noreply@mydomain.com", "");
$mail->Subject  = utf8_decode("sub");
$mail->AltBody  = utf8_decode("body");
$mail->MsgHTML(utf8_decode($msg));
$mail->AddAddress("to");
$mail->AddBCC("bcc@mydomain.at");

我认为代码还可以但我不知道问题是什么。 仅在gmail中我从未收到过它。 谢谢!

3 个答案:

答案 0 :(得分:2)

请检查Gmail settings。不允许通过25端口发送。

尝试此设置

clientxy.Port = 465;
clientxy.EnableSsl = true;

答案 1 :(得分:1)

我发现了问题!

我不知道为什么gmail不接收来自smtpclient的电子邮件,但是我安装了一个带有其他smtp功能的nuget,这个有效!

谢谢大家的帮助!!

答案 2 :(得分:0)

以下设置应该有效

clientxy.Port = 587;
clientxy.EnableSsl = true;

另一点是

您必须至少更改一次密码。并尝试使用安全级别的密码(不要使用与密码相同的用户,123456等)