使用C#发送QQ邮件:附件与批量收件人

需积分: 10 0 下载量 144 浏览量 更新于2024-09-11 收藏 3KB TXT 举报
"该资源主要介绍了如何使用C#编程语言通过.NET框架发送QQ邮件,包括向个人和多人发送邮件,以及添加附件(如文档、压缩包和图片)的步骤。" 在C#编程环境中,发送电子邮件是一项常见的任务,尤其是在开发Web应用程序时。此资源涉及到的关键知识点如下: 1. System.Net.Mail命名空间:`using System.Net.Mail;` 是用于处理邮件发送的核心部分,包含了创建和发送邮件所需的所有类。 2. MailMessage类:`MailMessage` 类是构建邮件消息的对象,包含发件人、收件人、主题和邮件正文等信息。例如: ```csharp MailMessage mailmessage = new MailMessage(); mailmessage.From = new MailAddress("1106521534@qq.com"); ``` 3. 收件人管理:`MailMessage.To` 属性用于添加收件人。在示例中,`shoujianr.Text` 从文本框获取收件人邮箱地址,用分号分隔,然后通过循环逐个添加到邮件的收件人列表中。 ```csharp string[] mailNames = (shoujianr.Text + ";").Split(';'); foreach (string name in mailNames) { if (name != string.Empty) { mailmessage.To.Add(new MailAddress(name, displayName)); } } ``` 4. DisplayName属性:`MailAddress` 构造函数中的第二个参数可以设置收件人的显示名称,但在示例中未实际赋值,仅留作占位。 5. FileUpload控件:`asp:FileUpload` 控件允许用户从本地计算机选择文件作为邮件附件。`txtUpFile.PostedFile.FileName` 获取上传文件的原始名称,`txtUpFile.PostedFile.InputStream` 可用于读取上传文件的内容。 6. 发送附件:要将文件作为附件添加到邮件中,需要使用`Attachment`类: ```csharp Attachment attachment = new Attachment(txtUpFile.PostedFile.InputStream, fileName); mailmessage.Attachments.Add(attachment); ``` 7. SmtpClient类:`SmtpClient` 类负责实际发送邮件。需要设置SMTP服务器地址、端口、用户名和密码等信息,例如: ```csharp SmtpClient smtpClient = new SmtpClient("smtp.qq.com", 587); smtpClient.UseDefaultCredentials = false; smtpClient.Credentials = new NetworkCredential("your_username", "your_password"); smtpClient.EnableSsl = true; smtpClient.Send(mailmessage); ``` 8. 事件处理:在ASP.NET中,按钮点击事件(`Button1_Click`)通常会触发邮件发送的逻辑,这可以通过在后台代码中定义相应的事件处理方法来实现。 以上是针对QQ邮件发送的C#编程基础,涉及到的类和方法都是.NET Framework的一部分,适用于各种邮件服务,不仅仅是QQ邮箱。请注意,实际使用时需要替换示例中的硬编码值(如邮箱地址、用户名、密码等),并确保正确配置SMTP服务器的设置。