C# 尝试用C发送邮件时出现SMTP异常#

C# 尝试用C发送邮件时出现SMTP异常#,c#,.net,email,smtp,system.net.mail,C#,.net,Email,Smtp,System.net.mail,我正在使用以下非常简单的代码,并且不断收到System.Net.Mail.SmtpException发送邮件失败的消息。这是我的代码: static void main(string[] args) { MailAddress from = new MailAddress("MyEmail@gmail.com", "Mr. Test"); MailAddress to = new MailAddress("AnotherEmail@gmail.com", "mr. man");

我正在使用以下非常简单的代码,并且不断收到
System.Net.Mail.SmtpException
发送邮件失败的消息。这是我的代码:

static void main(string[] args)
{
    MailAddress from = new MailAddress("MyEmail@gmail.com", "Mr. Test");
    MailAddress to = new MailAddress("AnotherEmail@gmail.com", "mr. man");
    MailMessage msg = new MailMessage(from, to);
    msg.Subject = "email";
    msg.Body = "This is email.";
    SmtpClient client = new SmtpClient("smtp.gmail.com");

    client.Send(msg);
}

我以前从未尝试过以编程方式发送电子邮件,因此我非常感谢您的帮助。

我发现给出的代码不正确的第一件事是没有为smtp服务器验证提供用户名/密码

另外,为了更好地了解导致SmtpException的确切原因,请在调试器中捕获异常并查看异常的详细信息。我已经很好地解释了是什么导致了SMTP错误


您可以尝试按照以下说明通过gmail使用SMTP发送邮件

您缺少凭据并作为TLS(安全连接)发送:

详情如下:
谷歌不希望您使用端口25,他们希望您使用587(ssl)或467。它们还要求您在发送邮件时进行身份验证。

您能获得完整的邮件错误堆栈吗?试试exception.ToString(),我想这是因为你没有用gmail进行身份验证。@George:我如何用gmail进行身份验证?
Credentials = new NetworkCredential("myusername@gmail.com", "mypwd"), 
EnableSsl = true