`
isiqi
  • 浏览: 16551754 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Microsoft .NET Framework 2.0实现发送邮件(Email)总结

阅读更多

在 .NET Framework 2.0的System.Net.Mail命名空间中新增的MailMessage类和SmtpClient类使我们很容易发送Email,SmtpClient类提供了同步和异步2种方式发送邮件.

同步发送邮件由于比较简单,请看代码


<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->MailMessagemm=newMailMessage();

//发件人
mm.From=newMailAddress("aierong@126.com","aierong_126");

//收件人(可以是多个)
mm.To.Add(newMailAddress("aierong@qq.com"));
mm.To.Add(
newMailAddress("aierong@163.com"));

//抄送(CC)(可以是多个)
mm.CC.Add(newMailAddress("aierong@qq.com"));
mm.CC.Add(
newMailAddress("aierong@qq.com"));

//密件抄送(BCC)(可以是多个)
mm.Bcc.Add(newMailAddress("114298@qq.com"));
mm.Bcc.Add(
newMailAddress("10249102@qq.com"));

//主题
mm.Subject="邮件的主题1";

//邮件正文
mm.Body="body";

//附件(可以是多个)
mm.Attachments.Add(newAttachment(@"D:\Access.zip"));
mm.Attachments.Add(
newAttachment(@"D:\SetupReport.msi"));

SmtpClientsc
=newSmtpClient();
//设置SMTP主机的名称或IP地址
sc.Host="smtp.126.com";

stringUser="";
stringPassWord="";
//设置用于验证发件人身份的凭据
sc.Credentials=newSystem.Net.NetworkCredential(User,PassWord);

sc.Send(mm);

MessageBox.Show(
"ok");

要是邮件容量比较大,可以设置SmtpClient.Timeout属性(默认值为100 秒),以免超时。

当然,我们还可以用配置文件来指定SmtpClient对象的默认主机、端口和凭据值等属性。请看下面配置


<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><system.net>
<mailSettings>
<smtp>
<networkpassword=""userName=""host="smtp.126.com"/>
</smtp>
</mailSettings>
</system.net>



异步发送邮件:
以上代码是基于同步的发送方式,利用SmtpClient.SendAsync方法可以很方便实现异步发送邮件

SendAsync方法描述如下:
public void SendAsync (
MailMessage message,
Object userToken
)

参数
message
包含要发送的消息的 MailMessage。
userToken
一个用户定义对象,此对象将被传递给完成异步操作时所调用的方法。
代码

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->MailMessagemm=newMailMessage();

//发件人
mm.From=newMailAddress("aierong@126.com","aierong_126");

//收件人(可以是多个)
mm.To.Add(newMailAddress("aierong@qq.com"));

//主题
mm.Subject="邮件的主题1";

//邮件正文
mm.Body="body";

//附件(可以是多个)
mm.Attachments.Add(newAttachment(@"D:\Access.zip"));

SmtpClientsc
=newSmtpClient();
//SmtpClient.SendCompleted事件,在异步电子邮件发送操作完成时调用
sc.SendCompleted+=newSendCompletedEventHandler(sc_SendCompleted);

//设置SMTP主机的名称或IP地址
sc.Host="smtp.126.com";

stringUser="aierong";
stringPassWord="aie100le";
//设置用于验证发件人身份的凭据
sc.Credentials=newSystem.Net.NetworkCredential(User,PassWord);
//异步发送邮件
sc.SendAsync(mm,"testmessage");


voidsc_SendCompleted(objectsender,AsyncCompletedEventArgse)
{
if(e.Error==null)
{
MessageBox.Show(
"发送成功");
//显示出来用户定义对象"testmessage"
MessageBox.Show(e.UserState.ToString());
}
else
{
MessageBox.Show(e.Error.Message);
}
}
http://aierong.cnblogs.com
分享到:
评论

相关推荐

    ASP.NET MVC2.0实现数据增删改查

    ASP.NET MVC2.0是一个基于模型-视图-控制器(MVC)设计模式的Web应用程序框架,由微软开发,用于构建高效、可测试且易于维护的Web应用。在这个框架下,开发者可以更清晰地分离业务逻辑、用户界面和数据处理。在本...

    基于.net2.0Email程序

    总结,基于.NET 2.0的Email程序利用了.NET Framework 2.0的`System.Net.Mail`命名空间,通过`MailMessage`和`SmtpClient`类实现邮件的创建与发送。"BMailer"作为这样的程序,旨在简化电子邮件的管理工作,为用户提供...

    The.ASP.NET.2.0技术选集

    本章提供了使用ASP.NET 2.0发送邮件的详细指南。 - **SMTP配置**:讲解了如何配置SMTP服务器以支持电子邮件的发送。 - **邮件消息构造**:介绍了如何使用MailMessage类创建格式化的邮件内容。 - **邮件附件与模板**...

    ASP+.NET+2.0数据库经典1

    它基于.NET Framework 2.0,提供了一系列的新特性和改进,比如更丰富的服务器控件、更强大的身份验证和授权机制等。这些特性使得开发者可以更加高效地构建出高性能、高安全性的Web应用。 #### 三、数据库操作基础 ...

    微软net2.0自带发邮件

    在.NET Framework 2.0版本中,微软提供了一套完整的邮件发送功能,使得开发者无需依赖第三方库如JMail,也能实现邮件的发送。这个功能主要通过System.Net.Mail命名空间下的类来实现,包括SmtpClient、MailMessage等...

    一个基于C# .Net 2 的邮件管理组件程序

    标题中的“一个基于C# .Net 2 的邮件管理组件程序”指的是这是一个使用C#编程语言,基于微软的.NET Framework 2.0版本构建的邮件处理软件开发组件。这种组件通常是为了帮助开发者在他们的应用程序中集成邮件发送和...

    Web Application 项目中使用ASP.NET 2.0 Profile.rar

    ASP.NET 2.0 Profile是微软.NET Framework 2.0版本中引入的一个功能,用于在Web应用程序中存储和检索用户特定的信息。这个特性允许开发者在不依赖数据库或其他持久化机制的情况下,轻松地管理用户的个性化设置。下面...

    免费短信任我发 用C#和第三方接口制作

    1.此程序运行在XP上需要安装 Microsoft .NET Framework 2.0 或以上 , Windows 7/Vista可以不安装Microsoft .NET Framework 华军软件园下载:http://www.onlinedown.net/soft/38669.htm 2.免费给全球任何移动...

    microsoft 70-528 题库

    根据提供的信息,我们可以了解到这份资料主要涉及的是微软认证考试70-528的相关知识点,特别是关于.NET Framework 2.0中的Web客户端开发部分。下面将详细解释几个具体的知识点。 ### 微软认证考试70-528概述 微软...

    免费短信任我发 用C#和第三方接口制作 提供源码

    1.此程序运行在XP上需要安装 Microsoft .NET Framework 2.0 或以上 , Windows 7/Vista可以不安装Microsoft .NET Framework 华军软件园下载:http://www.onlinedown.net/soft/38669.htm 2.免费给全球任何移动...

    asp.net 代码生成器 .NET代码生成器 C#代码生成器 三层源代码生成器

    9、如无法运行本软件,请下载并安装由微软公司提供的.Net FrameWork2.0系统. 10、如果您在使用过程中遇到程序问题或建议请于我联系我的Email是 mailto:liangaspx@163.com。 11、如需要源码与我联系 李亮 QQ:...

    FastReport.Net 源码

    它适用于那些使用Microsoft Visual Studio 2005与2008或其它与.NET Framework 2.0及更高版本兼容的开发工具的开发人员。 提供全套源码,有需要请联系. QQ:8860109 Email:chenzhip_1@hotmail.com

    C# ASP.Net完整代码生成器

    10、如无法运行本软件,请下载并安装由微软公司提供的.Net FrameWork2.0系统. 11、如果您在使用过程中遇到程序问题或建议请于我联系我的Email是 mailto:liliang119007@163.com。 【生成单层代码】 输入数据库名...

    一个开源的的邮件接收程序email pop

    它构建于Microsoft的.NET Framework 2.0之上,这是一个广泛采用的开发平台,提供了丰富的类库和工具,支持多种编程语言,如C#和VB.NET。选择.NET 2.0作为基础意味着OpenPOP具有良好的兼容性和稳定性,能够运行在各种...

    ASP.NET代码生成器

    9、如无法运行本软件,请下载并安装由微软公司提供的.Net FrameWork2.0系统. 10、如果您在使用过程中遇到程序问题或建议请于我联系我的Email是 mailto:mikun@163.com。 11、如有疑问请联系作者 米坤 QQ:...

    MVC2.0 + WF4.0实现用户多步注册功能

    - **ASP.NET MVC2.0**:基于.NET Framework的MVC架构的Web应用程序框架。 - **WF4.0 (Windows Workflow Foundation 4.0)**:微软提供的工作流技术,用于定义、执行和管理业务流程和服务。 #### 用户注册流程概述 ...

    asp.mvc用户登录

    ASP.NET MVC 是微软提供的一种基于模型-视图-控制器(Model-View-Controller)架构的Web应用程序开发框架。在ASP.NET MVC2.0版本中,它提供了强大的功能和灵活性,使得开发者可以更有效地构建可维护、可扩展的Web...

    用gmail实现c#邮件收发Email程序

    在C#中,我们可以通过.NET Framework或.NET Core库来实现邮件功能。 1. **邮件发送** 发送邮件主要涉及到SMTP协议。C#中的`System.Net.Mail`命名空间提供了`SmtpClient`类,用于发送邮件。首先,你需要设置SMTP...

Global site tag (gtag.js) - Google Analytics