📜  c# 发送电子邮件 - C# (1)

📅  最后修改于: 2023-12-03 15:13:50.774000             🧑  作者: Mango

C# 发送电子邮件

在C#中发送电子邮件是一项非常基础且实用的技能。可以使用.NET Framework中内置的SmtpClient类。下面是一些简单的代码,可以在您的C#应用程序中使用它们来发送电子邮件。

准备工作

在发送电子邮件之前,您需要准备以下信息:

  • 发件人的电子邮件地址
  • 收件人的电子邮件地址(可以多个)
  • SMTP服务器地址和端口
  • 发件人的SMTP凭据,如果SMTP服务器需要身份验证
发送简单的文本邮件

如果您只是想发送简单的文本电子邮件,请尝试以下代码:

using System.Net.Mail;

class Program {
  static void Main(string[] args) {
    // 创建邮件
    MailMessage message = new MailMessage();
    
    // 设置发件人地址
    message.From = new MailAddress("sender@example.com");
    
    // 设置收件人地址
    message.To.Add(new MailAddress("recipient@example.com"));
    
    // 设置邮件主题和正文
    message.Subject = "Hello from C#";
    message.Body = "This is a test email from my C# application.";
    
    // 创建SMTP客户端
    SmtpClient client = new SmtpClient("smtp.example.com", 587);
    
    // 设置SMTP凭据
    client.Credentials = new System.Net.NetworkCredential(
                          "username", "password");
    
    // 发送邮件
    client.Send(message);
  }
}
发送HTML邮件

如果您需要发送带有格式和样式的HTML电子邮件,请使用以下代码:

using System.Net.Mail;

class Program {
  static void Main(string[] args) {
    // 创建邮件
    MailMessage message = new MailMessage();
    
    // 设置发件人地址
    message.From = new MailAddress("sender@example.com");
    
    // 设置收件人地址
    message.To.Add(new MailAddress("recipient@example.com"));
    
    // 设置邮件主题
    message.Subject = "Hello from C#";
    
    // 创建HTML邮件主体
    message.IsBodyHtml = true;
    message.Body = "<h1>This is a test email from my C# application</h1>" +
                   "<p>Here are some <b>bold</b> and <i>italic</i> text in the email.</p>";
    
    // 创建SMTP客户端
    SmtpClient client = new SmtpClient("smtp.example.com", 587);
    
    // 设置SMTP凭据
    client.Credentials = new System.Net.NetworkCredential(
                          "username", "password");
    
    // 发送邮件
    client.Send(message);
  }
}
发送带有附件的邮件

如果您需要在电子邮件中添加附件,请尝试以下代码:

using System.Net.Mail;

class Program {
  static void Main(string[] args) {
    // 创建邮件
    MailMessage message = new MailMessage();
    
    // 设置发件人地址
    message.From = new MailAddress("sender@example.com");
    
    // 设置收件人地址
    message.To.Add(new MailAddress("recipient@example.com"));
    
    // 设置邮件主题
    message.Subject = "Hello from C#";
    
    // 添加附件
    message.Attachments.Add(new Attachment("file.txt"));
    
    // 创建SMTP客户端
    SmtpClient client = new SmtpClient("smtp.example.com", 587);
    
    // 设置SMTP凭据
    client.Credentials = new System.Net.NetworkCredential(
                          "username", "password");
    
    // 发送邮件
    client.Send(message);
  }
}

以上代码可以让您开始使用C#发送电子邮件。始终记得选择正确的SMTP服务器,填写正确的SMTP凭据,以及添加必要的电子邮件信息。