`
ding20688
  • 浏览: 63275 次
  • 性别: Icon_minigender_1
  • 来自: 烟台
社区版块
存档分类
最新评论

C#中发送Email

 
阅读更多
// 引入命名空间
using System.Net;
using System.Net.Mail;
SmtpClient smtp = new SmtpClient(); //实例化一个SmtpClient
smtp.DeliveryMethod = SmtpDeliveryMethod.Network; //将smtp的出站方式设为 Network
smtp.EnableSsl = false;//smtp服务器是否启用SSL加密smtp.Host = "smtp.163.com"; //指定 smtp 服务器地址
smtp.Port = 25;             //指定 smtp 服务器的端口,默认是25,如果采用默认端口,可省去//如果你的SMTP服务器不需要身份认证,则使用下面的方式,不过,目前基本没有不需要认证的了
smtp.UseDefaultCredentials = true;
//如果需要认证,则用下面的方式
smtp.Credentials = new NetworkCredential("邮箱帐号@163.com", "邮箱密码");MailMessage mm = new MailMessage(); //实例化一个邮件类mm.Priority = MailPriority.High; //邮件的优先级,分为 Low, Normal, High,通常用 Normal即可mm.From = new MailAddress("邮箱帐号@163.com", "真有意思", Encoding.GetEncoding(936));
//收件方看到的邮件来源;
//第一个参数是发信人邮件地址
//第二参数是发信人显示的名称
//第三个参数是 第二个参数所使用的编码,如果指定不正确,则对方收到后显示乱码
//936是简体中文的codepage值
注:上面的邮件来源,一定要和你登录邮箱的帐号一致,否则会认证失败

mm.ReplyTo = new MailAddress("test_box@gmail.com", "我的接收邮箱", Encoding.GetEncoding(936));
//ReplyTo 表示对方回复邮件时默认的接收地址,即:你用一个邮箱发信,但却用另一个来收信
//上面后两个参数的意义, 同 From 的意义mm.CC.Add("a@163.com,b@163.com,c@163.com");
//邮件的抄送者,支持群发,多个邮件地址之间用 半角逗号 分开

//当然也可以用全地址,如下:
mm.CC.Add(new MailAddress("a@163.com", "抄送者A", Encoding.GetEncoding(936)));
mm.CC.Add(new MailAddress("b@163.com", "抄送者B", Encoding.GetEncoding(936)));
mm.CC.Add(new MailAddress("c@163.com", "抄送者C", Encoding.GetEncoding(936)));

mm.Bcc.Add("d@163.com,e@163.com");
//邮件的密送者,支持群发,多个邮件地址之间用 半角逗号 分开

//当然也可以用全地址,如下:
mm.CC.Add(new MailAddress("d@163.com", "密送者D", Encoding.GetEncoding(936)));
mm.CC.Add(new MailAddress("e@163.com", "密送者E", Encoding.GetEncoding(936)));mm.Sender = new MailAddress("xxx@xxx.com", "邮件发送者", Encoding.GetEncoding(936));
//可以任意设置,此信息包含在邮件头中,但并不会验证有效性,也不会显示给收件人
//说实话,我不知道有啥实际作用,大家可不理会,也可不写此项mm.To.Add("g@163.com,h@163.com");
//邮件的接收者,支持群发,多个地址之间用 半角逗号 分开

//当然也可以用全地址添加

mm.To.Add(new MailAddress("g@163.com", "接收者g", Encoding.GetEncoding(936)));
mm.To.Add(new MailAddress("h@163.com", "接收者h", Encoding.GetEncoding(936)));mm.Subject = "这是邮件标题"; //邮件标题
mm.SubjectEncoding = Encoding.GetEncoding(936);
// 这里非常重要,如果你的邮件标题包含中文,这里一定要指定,否则对方收到的极有可能是乱码。
// 936是简体中文的pagecode,如果是英文标题,这句可以忽略不用mm.IsBodyHtml = true; //邮件正文是否是HTML格式

mm.BodyEncoding = Encoding.GetEncoding(936);
//邮件正文的编码, 设置不正确, 接收者会收到乱码

mm.Body = "<font color="red">邮件测试,呵呵</font>";
//邮件正文mm.Attachments.Add( new Attachment( @"d:a.doc", System.Net.Mime.MediaTypeNames.Application.Rtf ) );
//添加附件,第二个参数,表示附件的文件类型,可以不用指定
//可以添加多个附件
mm.Attachments.Add( new Attachment( @"d:b.doc") );smtp.Send( mm ); //发送邮件,如果不返回异常, 则大功告成了。
//发送Email
using System.Web.Mail;  
using System.Net.Mail;  
using System.Net; 
/// <summary>  
///  发送EMail  
/// </summary>  
/// <param name="title">标题</param>  
/// <param name="body">内容</param>  
/// <param name="toAdress">发送到哪</param>  
/// <param name="fromAdress">从哪发送</param>  
/// <param name="userName">用户名</param>  
/// <param name="userPwd">密码</param>  
/// <param name="smtpHost">smtp服务器</param>  
private void SendMail(string title, string body, string toAddress, string fromAddress, string username, string userpwd, string smtphost)
    {
        try
        {
            MailAddress to = new MailAddress(toAddress);
            MailAddress from = new MailAddress(fromAddress);
            System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(from, to);
            message.Subject = title;
            message.Body = body;        
            SmtpClient smtp = new SmtpClient();
            smtp.UseDefaultCredentials = true;
            smtp.Port = 25;
            smtp.Credentials = new NetworkCredential(username, userpwd);
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.Host = smtphost;
            message.To.Add(toAddress);
            smtp.Send(message);
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
            throw;
        }
}
测试:
SendMail("测试一下啊", "今天中午有好饭", "ding688@tom.com", "ding20688@163.com", "ding20688", "lejin%79", "smtp.163.com");
分享到:
评论

相关推荐

    C# 发送Email接收邮件 126发送Email Gmail发送Email

    在C#中发送和接收电子邮件是一项常见的任务,这通常涉及到使用SMTP(Simple Mail Transfer Protocol)服务。本篇将详细介绍如何使用C#通过126、163以及Gmail邮箱发送和接收邮件。 首先,我们需要引入`System.Net....

    c# email发送demo

    "c# email发送demo"是一个示例项目,它展示了如何在C#环境中实现邮件发送功能。这个项目可能包含一个名为"Maillib"的库或类,其中封装了邮件发送的相关逻辑。以下是对这个主题的详细讲解: 1. **SMTP(Simple Mail ...

    C# Email发送程序

    在本场景中,我们关注的是使用C#来编写一个电子邮件发送程序。这通常涉及到.NET框架中的System.Net.Mail命名空间,它提供了用于发送电子邮件的类和方法。 电子邮件发送在商业和日常通信中扮演着重要角色,而使用C#...

    用C#自动发送EMail

    对于标签中的"Email",在C#中,电子邮件操作涉及到对SMTP协议的理解和使用.NET框架提供的邮件类库。"C#"作为编程语言,提供了强大的邮件处理能力。在实际应用中,我们还可以结合其他技术,比如定时任务(如Windows...

    C# smtpclident发送email

    C#语言 email发送,smtpclient方式 正常上网环境,有代理方式的代码,但测试不成功

    C# winform 发送电子邮件 email 源码

    本文将深入探讨如何使用C# WinForm来实现电子邮件的发送功能,这是一项常见的需求,尤其是在自动化任务、通知系统或者用户交互中。 首先,发送电子邮件涉及的核心概念是SMTP(Simple Mail Transfer Protocol),它...

    c#发送Email

    在C#编程中,发送电子邮件是一项常见的任务,尤其在开发Web应用、自动化脚本或服务时。本教程将深入探讨如何使用C#语言通过163邮箱实现邮件发送功能。 首先,我们需要了解SMTP(Simple Mail Transfer Protocol)...

    C#发送Email源代码

    以下是对C#发送Email源代码的详细解释。 1. **SMTP协议**:SMTP(Simple Mail Transfer Protocol)是互联网上的标准协议,用于发送电子邮件。C#通过.NET Framework的`System.Net.Mail`命名空间提供了对SMTP的支持。...

    c# 发送Email

    本项目提供了一个用C#编写的发送Email的工具,适用于开发者学习和参考。以下将详细介绍涉及到的关键知识点和代码文件的作用。 1. **SMTP(Simple Mail Transfer Protocol)**:SMTP是用于发送电子邮件的标准协议。...

    C# Email邮件发送程序

    在提供的"**C# Email发送程序下载页**"中,可能包含了示例代码、文档或其他资源,帮助开发者快速上手并理解C#邮件发送的实现过程。通过实践这些示例,可以更好地掌握这一关键技能,并将其应用于实际项目中。

    C# 发送email信息

    #### 二、C#发送电子邮件基础 ##### 2.1 使用`System.Net.Mail`命名空间 在C#中,发送电子邮件主要依赖于.NET框架中的`System.Net.Mail`命名空间。该命名空间提供了用于发送电子邮件的类和方法。例如,`...

    C# 发送Email实例

    根据提供的文件信息,我们可以深入探讨如何使用C#发送电子邮件,并且详细解析文件中提到的关键步骤和技术要点。 ### C# 发送Email实例 #### 一、背景介绍 在现代软件开发中,电子邮件是一种非常重要的通信手段。它...

    C#.net发送邮件完整源代码(DEMO完整版)

    在C#.NET编程环境中,发送电子邮件是一项常见的任务,尤其对于开发者来说,可能需要构建自动通知、用户注册验证或数据报告等功能。本资源提供了一个完整的C#.NET发送邮件的DEMO,适用于Visual Studio 2008,且包含了...

    C# 邮件发送代码 授权码可在个人邮箱内获取

    在C#编程中,发送邮件是一项常见的任务,用于与用户通信、发送通知或者进行自动化的数据传输。在本文中,我们将深入探讨如何使用C#来编写邮件发送代码,并且了解授权码的获取和使用。 首先,C#中发送邮件主要依赖于...

    C# Email发送类

    通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现

    c#smtp 发送邮件代码

    在C#编程环境中,SMTP(Simple Mail Transfer Protocol)服务常被用来发送电子邮件。这个过程涉及到多个关键步骤和组件,下面将详细讲解如何使用C#通过SMTP发送带有附件的邮件。 首先,我们需要导入必要的命名空间...

    c#写的向用户发送email的代码配置

    在C#编程中,发送电子邮件是一项常见的任务,用于与用户进行通信、提供服务通知或接收反馈。本篇文章将深入探讨如何使用C#编写代码来配置并实现向用户发送电子邮件的功能。 首先,要发送电子邮件,我们需要使用.NET...

    博主推荐C# Winform定时发送邮箱(附源码)

    【博主推荐】C# Winform定时发送邮箱(附源码),1.支持对oracle数据定时查询,然后把查询结果发送邮箱;2.灵活可配置,日志目录,数据库相关连接,展示的字段,展示的格式,发送的邮箱,表格的风格等; 3.可以在此...

    C#批量发送邮件-发送excel中的数据

    在C#编程环境中,批量发送邮件是一项常见的任务,特别是在企业应用中,如向员工分发工资单或报表。本教程将深入探讨如何利用C#来实现这个功能,特别是在结合Excel数据进行个性化发送时的实现方法。 首先,我们需要...

Global site tag (gtag.js) - Google Analytics