使用SmtpClient和MailMessage类可发送带附件邮件,需添加System.Net和System.Net.Mail命名空间;2. 创建MailMessage设置发件人、收件人、主题、正文并添加Attachment对象;3. 配置SmtpClient指定SMTP服务器(如Gmail的smtp.gmail.com:587),启用SSL,提供凭据后调用Send方法发送;4. 注意使用应用专用密码、确保文件路径存在,并推荐.NET 6+改用MailKit。

在 .NET 中发送带附件的电子邮件,可以使用 SmtpClient 和 MailMessage 类。下面是一个简单实用的示例,展示如何通过 Gmail 或其他 SMTP 服务发送带附件的邮件。
1. 添加必要的命名空间
using System.Net;using System.Net.Mail;
2. 创建并配置邮件消息
使用 MailMessage 设置发件人、收件人、主题、正文,并添加附件:
NetShopForge是一款强劲的B2C的网上购物软件,利用她我们能建立起强劲的、自由的、安全的购物平台。 维博软件以有这样的软件无比自豪,系统基于ASP.NET 2.0及SqlServer开发,充分享受新技术带来的乐趣。 软件综合了卖家,买家,程序员,设计者的头脑风暴,目的就是用户能建立风格不同的电子商务系统,使它显得更加与众不同。 如果您寻求一款能按您的思想随意发挥的网上购物软件,那么Net
MailMessage mail = new MailMessage();
mail.From = new MailAddress("your_email@gmail.com");
mail.To.Add("recipient@example.com");
mail.Subject = "测试带附件的邮件";
mail.Body = "这是带有附件的测试邮件内容。"; // 添加附件(例如一个本地文件)
Attachment attachment = new Attachment(@"C:\temp\test.pdf");
mail.Attachments.Add(attachment);
3. 配置 SMTP 客户端并发送
使用 SmtpClient 连接到邮件服务器并发送邮件。以 Gmail 为例:
SmtpClient client = new SmtpClient("smtp.gmail.com", 587);client.EnableSsl = true;
client.Credentials = new NetworkCredential("your_email@gmail.com", "your_app_password"); // 发送邮件
try
{
client.Send(mail);
Console.WriteLine("邮件发送成功!");
}
catch (Exception ex)
{
Console.WriteLine("发送失败: " + ex.Message);
}
finally
{
mail.Dispose();
attachment.Dispose();
}









