可以直接用
using System;
using System.Net;
using System.Net.Mail;
class EmailSender
{
// 发送邮件的函数,接收SMTP配置作为参数
public static void SendEmail(string smtpServer, int smtpPort, string senderEmail, string senderPassword, string subject, string body, string toEmail)
{
try
{
// 创建邮件消息
MailMessage mail = new MailMessage();
mail.From = new MailAddress(senderEmail); // 设置发件人
mail.To.Add(toEmail); // 设置收件人
mail.Subject = subject; // 设置邮件主题
mail.Body = body; // 设置邮件正文内容
mail.IsBodyHtml = false; // 设置是否支持HTML内容(这里设置为纯文本)
// 配置 SMTP 客户端
SmtpClient smtp = new SmtpClient(smtpServer, smtpPort);
smtp.EnableSsl = true; // 启用 SSL 加密
smtp.Credentials = new NetworkCredential(senderEmail, senderPassword); // 设置认证凭据
// 发送邮件
smtp.Send(mail);
Console.WriteLine("Email sent successfully!");
}
catch (Exception ex)
{
Console.WriteLine($"Failed to send email: {ex.Message}");
}
}
static void Main(string[] args)
{
// 输入SMTP服务器配置和邮件内容
string smtpServer = "smtp.example.com"; // SMTP 服务器地址
int smtpPort = 587; // SMTP 端口
string senderEmail = "your-email@example.com"; // 发件人邮箱
string senderPassword = "your-email-password"; // 发件人邮箱密码(可能是应用专用密码)
string subject = "Test Subject"; // 邮件主题
string body = "This is a test email body."; // 邮件正文
string toEmail = "recipient@example.com"; // 收件人邮箱
// 调用发送邮件函数
SendEmail(smtpServer, smtpPort, senderEmail, senderPassword, subject, body, toEmail);
}
}