System.Net.Mail
System.Net.Mail命名空间包含用于将电子邮件发送到简单邮件传输协议(SMTP)服务器进行传送的类。
在此命名空间中,有两个很重要的类;
MailMessage
表示可以使用SmtpClient类发送的电子邮件,主要用于设置发送电子邮件时,收件人、发件人及邮件内容的一些相关信息。
属性:
AlternateViews 获取用于存储邮件正文的替代式的附件集合
Attachments 获取用于存储附加到此电子邮件的数据的附件集合
Bcc 获取包含此电子邮件的密件抄送收件人的地址集合
Body 获取或设置邮件的正文
BodyEncoding 获取或设置用于邮件的编码
CC 获取包含电子邮件的发送通知
Headers 获取与此电子邮件一起传送的电子邮件标头
IsBodyHtm 获取或设置指示邮件正文是否为Html格式的值
Priority 获取或设置此电子邮件的优先级
ReplyTo 获取或设置邮件的回复地址
Sender 获取或设置此电子邮件的发件人地址
Subject 获取或设置此电子邮件的主题行
SubjectEncoding 获取或设置此电子邮件的主题内容使用的编码
To 获取包含此电子邮件的收件人的地址集合
SmtpMessage
SmtpClient类允许应用程序使用简单邮件传输协议来发送电子邮件,若要使用 SmtpClient构造并发送邮件,必须制定以下内容;
1.用来发送电子邮件的SMTP主机服务器;
2.身份验证任据(如果SMTP服务器要求);
3.发件人的电子邮件地址;
4.收件人的电子邮件地址;
5.邮件内容;
属性:
Credentials 获取或设置用于验证大贱人身份的凭据
DeliveryMethod 制定如何处理代发的电子邮件
Enablessl 制定SmtpClient是否使用安全套字层(SSL)加密连接
Host 获取或设置用于SMTP事务的主机名称或IP地址
PickupddirectoryLocation 获取或设置文件夹,应用程序在该文件夹中保存将由本地SMTP服务器处理的邮件
Port 获取或设置用于SMTP事务的端口
Servicepoint 获取用于传输电子邮件的网络连接
Send 发送电子邮件。该方法在传输的过程中将会阻止其他操作
SendAsysnc 发送电子邮件。此方法不会阻止调用线程
SendAsyncCancel 取消异步操作已发送电子邮件
TimeOut 获取或设置一个值,该值指定同步Send调用的超时时间
UseDefaultCredentials 获取或设置Boolean值,该值控制DefaultCredential是否随请求一起发送
private void button1_Click(object sender, EventArgs e)
{
/*发邮件步骤
* 1.首先要发件人地址,密码,服务器的类型
*
* 2.收件人地址 主题等!
*
*
*/
//表示可以使用 System.Net.Mail.SmtpClient 类发送的电子邮件。
MailMessage mail = new MailMessage();
string mymail = TxtUser.Text;
string mypwd = TxtPassword.Text;
//是否获取HTML格式的值
mail.IsBodyHtml = true;
//设置此电子邮件的发件人地址
mail.From = new MailAddress(mymail);
//获取包含此电子邮件收件人的地址集合
mail.To.Add(new MailAddress(TxtshouAdress.Text));
//设置此电子邮箱的主题行
mail.Subject = TxtMailmain.Text;
//设置电子邮箱的正文
mail.Body = textBox6.Text;
//设置用于邮件正文的编码
mail.BodyEncoding = System.Text.Encoding.UTF8; //允许应用程序使用简单邮件传输协议 (SMTP) 来发送电子邮件。
SmtpClient cl = new SmtpClient(tetServer.Text);
//获取或设置Boolean值,该值控制DefaultCredential是否随请求一起发送
cl.UseDefaultCredentials = false;
//设置用于验证发件人身份的凭证
cl.Credentials = new System.Net.NetworkCredential(mymail.Substring(0, mymail.IndexOf('@')), mypwd);
//指定谁代发邮件
cl.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
//发送
cl.Send(mail);
MessageBox.Show("发送成功");
}
catch (Exception ex)
{ MessageBox.Show(ex.Message);
}
System.Net.Mail的更多相关文章
- C#中使用System.Web.Mail.MailMessage类无法CC多人的问题
从.NET 2.0 开始,引入了一个新的类,System.Net.Mail.MailMessage.该类用来取代 .NET 1.1 时代System.Web.Mail.MailMessage类.Sys ...
- 在.net程序中使用System.Net.Mail来发送邮件
System.Net.Mail是微软自家提供的工具,在.net程序中可以使用该空间中的SmtpClient实例来实现邮件的发送. 使用System.Net.Mail空间与Web.config配置相配合 ...
- C#System.Net.Mail采用简单邮件传输协议发送邮件
引用: using System.Net.Mail; public class EmailHelper { public static bool SendEmail(string title, str ...
- asp.net 发送邮件代码 System.Net.Mail
前台页面 SendEmail.aspx 代码 using System.Net.Mail;using System.Net; <h2> 发送电子邮件演示 </h2> <t ...
- 利用System.Net.Mail和多线程实现邮件发送
对于邮件发送,一般来说,程序会响应超过1秒,这样对于用户体验来说,让用户等待的时间过长,而且发送的邮件越多时间就越长,所以这里我利用了线程的来处理邮件发送这种耗时的工作,废话不多说,直接上代码 pri ...
- 利用System.Net.Mail 的SmtpClient发送邮件
原文:利用System.Net.Mail 的SmtpClient发送邮件 几个月前总结过关于Jmail发送邮件,当时用Jmail发送邮件发送速度有点慢(可能对Jmail了解不是很多).现在改为用微软提 ...
- System.net.mail.smtpException;服务器提交了协议冲突 服务器响应为:
最近发邮件遇到问题. 主机godaddy 端口 25,80 都可以用 stmp服务器地址:smtpout.secureserver.net 不支持ssl 我就吧 EnableSsl 设置为false了 ...
- C#使用 System.Net.Mail发送邮件功能
.NET 里包含了很多很丰富的邮件发送与接受的API在 System.Net.Mail命名空间里,使得我们开发发送和接受邮件相关功能变得简单,下面是一个简单发送邮件的功能: private void ...
- System.net.mail 使用ssl发送邮件失败
我采用了.net 的自带组件System.Net.Mail发送邮件,主要是在客户注册网站成功的时候发条欢迎邮件,最近邮件无法发送了,看了下腾讯smtp邮件配置,所有的邮件发送都换成ssl了,之前用的是 ...
- 使用System.Net.Mail中的SMTP发送邮件(带附件)
System.Net.Mail 使用简单邮件传输协议SMTP异步发送邮件 想要实现SMTP发送邮件,你需要了解这些类 SmtpClient :使用配置文件设置来初始化 SmtpClient类的新实例. ...
随机推荐
- 企业sudo权限规划详解 (实测一个堆命令搞定)
简述问题: 随着公司的服务器越来越多,人员流动性也开始与日俱增,以往管理服务器的陈旧思想应当摒弃,公司需要有 更好更完善的权限体系,经过多轮沟通和协商,公司一致决定重新整理规划权限体系 ...
- 【1】循序渐进学 Zabbix :初识与基础依赖环境搭建( LNMP )
写在前面的话 运维监控是一个很大的话题,在这一块个人接触的比较突出的服务主要有 Nagio 和 Zabbix 两款.而这几年跳过的公司中,Zabbix 一直都是首选且唯一选择,Nagios 没遇到. ...
- 没固定公网 IP 的公司内网实现动态域名解析( 阿里云万网解析 )
情景说明 前段时间应公司需求,需要将内网的服务映射到公网.由于公司使用的是类似家庭宽带的线路,没有固定的公网 IP 地址,所以决定使用域名来完成. 当时有几种方案: 1.花生壳:但是目前需要乱七八糟的 ...
- SpringAOP使用
AspectJ 注解: 1.@Aspect.@Pointcut.Advice @Aspect @Component public class SecurityAspect { @Autowired A ...
- CF525E Anya and Cubes(meet in the middle)
题面 给你\(n\)个数,\(n\le 26\)初始序列为\(a_i,0\le a_i\le 10^9\) 你有\(k\)个\(!\),每个\(!\)可以使序列中的一个数变成\(a_i!\) 例如\( ...
- Bash Shell 小试牛刀
一.终端打印 [root@cai ~]# echo welcome to bash! welcome to bash! [cairui@cai ~]$ echo 'welcome to bash!' ...
- Windows自动化---模拟鼠标键盘
1.PyUserInput(不推荐) python2可以使用PyUserInput库:(不推荐) 支持最基础的鼠标,键盘操作,可以剪贴. 安装的时候:pip install PyUserInput 需 ...
- POJ1052 Plato's Blocks
题目来源:http://poj.org/problem?id=1052 题目大意: 把1*1*1的小立方体通过粘接相邻面组成大的立方体的形状.如下图所示: 一层一层地堆叠,立方体从三个方向的投影会分别 ...
- [JavaScript]如何实现一个JS脚本能在browser和NodeJs里都是用
下面是一个Common的Solution 'use strict'; // Universal Module Definition (UMD) to support AMD, CommonJS/Nod ...
- List<T>中 GetRange (int index, int count)的使用
GetRange:在源 List<T> 中创建元素范围的浅表复制. ; ) { List<T> uplist = new List<T>(); u++; <= ...