关于c#:使用.Net发送电子邮件

Sending emails using .Net

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Sending email in .NET through Gmail

我不知道使用gmail和hotmail通过.net发送电子邮件所需的API是什么,如果有人知道它对我非常有用的话,我也不知道如何将这些库安装到Vs2010中。


要发送电子邮件,请使用vs 2010 smtp。在.config中定义相关参数如下:

1
2
3
4
5
6
7
<system.net>
  <mailSettings>
    <smtp from="[email protected]">
      <network host="mail.yourdomain.com" port="yourport" userName="[email protected]" password="yourpassword" defaultCredentials="false"/>
    </smtp>
  </mailSettings>
</system.net>

作为发送电子邮件的C代码示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public static void Send(string Subject, string From, string Body, List CC, MailAddress To, bool BodyHTML)
{
  try
  {
    MailMessage mail = new MailMessage();
    if (CC != null)
    {
      foreach (emailAddress ea in CC)
      {
        mail.CC.Add(new MailAddress(ea.email, ea.fullname));
      }
    }
    mail.Subject = Subject;
    mail.Body = Body;
    mail.IsBodyHtml = BodyHTML;
    mail.From = new MailAddress(From);
    mail.To.Add(To);

    SmtpClient client = new SmtpClient();
    client.Host ="mail.yourdomain.com";
    client.Send(mail);
  }
  catch (Exception ex)
  {
    throw new Exception(ex.Message);
  }
}


您正在查找system.net.mail命名空间。不需要外部库-只需在类的顶部添加using指令即可开始。

这里有一个网站,上面有一些很好的参考资料可以让你开始:http://www.systemnetmail.com/