在C#中,你可以使用`System.Net.Mail`命名空间来发送HTML格式的邮件。以下是一个简单的示例,展示了如何使用`MailMessage`类和`SmtpClient`类来发送HTML格式的邮件。
using System;
using System.Net;
using System.Net.Mail;
class Program
{
static void Main()
{
// 设置SMTP服务器信息
string smtpHost = "smtp.example.com"; // 请替换为你的SMTP服务器地址
int smtpPort = 587; // SMTP服务器端口,对于Gmail等通常是587或465(SSL)
string smtpUser = "your-email@example.com"; // 你的邮箱地址
string smtpPass = "your-password"; // 你的邮箱密码或应用专用密码
// 创建邮件对象
MailMessage mail = new MailMessage();
mail.From = new MailAddress(smtpUser);
mail.To.Add("recipient@example.com"); // 收件人邮箱
mail.Subject = "HTML邮件示例";
mail.IsBodyHtml = true; // 设置为HTML格式
// 设置邮件正文为HTML
string htmlBody = @"<h1>Hello, World!</h1>
<p>这是一个HTML格式的邮件。</p>";
mail.Body = htmlBody;
// 创建SMTP客户端
SmtpClient smtp = new SmtpClient(smtpHost, smtpPort);
smtp.Credentials = new NetworkCredential(smtpUser, smtpPass);
smtp.EnableSsl = true; // 如果SMTP服务器要求SSL,则设置为true
try
{
smtp.Send(mail); // 发送邮件
Console.WriteLine("邮件发送成功!");
}
catch (Exception ex)
{
Console.WriteLine("邮件发送失败:" + ex.Message);
}
}
}
请注意,你需要将`smtpHost`、`smtpUser`、`smtpPass`和`mail.To.Add`中的地址替换为你自己的SMTP服务器信息和收件人地址。如果你的SMTP服务器要求SSL连接,请确保`smtp.EnableSsl`被设置为`true`。
此外,为了安全起见,强烈建议不要直接在代码中硬编码邮箱密码。考虑使用环境变量、配置文件或密钥管理服务来管理敏感信息。