C#发送邮件代码
2011-03-17 13:33
288 查看
using
System;
using
System.Net;
using
System.Net.Mail;
using
System.Net.Mime;
namespace
Fish
{
/**/
///
<summary>
///
发送邮件的类
///
</summary>
public
class
SendMail
{
private
MailMessage mailMessage;
private
SmtpClient smtpClient;
private
string
password;
//
发件人密码
/**/
///
<summary>
///
处审核后类的实例
///
</summary>
///
<param name="To">
收件人地址
</param>
///
<param name="From">
发件人地址
</param>
///
<param name="Body">
邮件正文
</param>
///
<param name="Title">
邮件的主题
</param>
///
<param name="Password">
发件人密码
</param>
public
SendMail(
string
To,
string
From,
string
Body,
string
Title,
string
Password)
{
mailMessage
=
new
MailMessage();
mailMessage.To.Add(To);
mailMessage.From
=
new
System.Net.Mail.MailAddress(From);
mailMessage.Subject
=
Title;
mailMessage.Body
=
Body;
mailMessage.IsBodyHtml
=
true
;
mailMessage.BodyEncoding
=
System.Text.Encoding.UTF8;
mailMessage.Priority
=
System.Net.Mail.MailPriority.Normal;
this
.password
=
Password;
}
/**/
///
<summary>
///
添加附件
///
</summary>
public
void
Attachments(
string
Path)
{
string
[] path
=
Path.Split(
'
,
'
);
Attachment data;
ContentDisposition disposition;
for
(
int
i
=
0
; i
<
path.Length; i
++
)
{
data
=
new
Attachment(path[i], MediaTypeNames.Application.Octet);
//
实例化
附件
disposition
=
data.ContentDisposition;
disposition.CreationDate
=
System.IO.File.GetCreationTime(path[i]);
//
获取
附件的创建日期
disposition.ModificationDate
=
System.IO.File.GetLastWriteTime(path[i]);
//
获取附件的修改日期
disposition.ReadDate
=
System.IO.File.GetLastAccessTime(path[i]);
//
获取附
件的读取日期
mailMessage.Attachments.Add(data);
//
添加到附件中
}
}
/**/
///
<summary>
///
异步发送邮件
///
</summary>
///
<param name="CompletedMethod"></param>
public
void
SendAsync(SendCompletedEventHandler CompletedMethod)
{
if
(mailMessage
!=
null
)
{
smtpClient
=
new
SmtpClient();
smtpClient.Credentials
=
new
System.Net.NetworkCredential
(mailMessage.From.Address, password);
//
设置发件人身份的票据
smtpClient.DeliveryMethod
=
System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Host
=
"
smtp.
"
+
mailMessage.From.Host;
smtpClient.SendCompleted
+=
new
SendCompletedEventHandler
(CompletedMethod);
//
注册异步发送邮件完成时的事件
smtpClient.SendAsync(mailMessage, mailMessage.Body);
}
}
/**/
///
<summary>
///
发送邮件
///
</summary>
public
void
Send()
{
if
(mailMessage
!=
null
)
{
smtpClient
=
new
SmtpClient();
smtpClient.Credentials
=
new
System.Net.NetworkCredential
(mailMessage.From.Address, password);
//
设置发件人身份的票据
smtpClient.DeliveryMethod
=
System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Host
=
"
smtp.
"
+
mailMessage.From.Host;
smtpClient.Send(mailMessage);
}
}
}
}
System;
using
System.Net;
using
System.Net.Mail;
using
System.Net.Mime;
namespace
Fish
{
/**/
///
<summary>
///
发送邮件的类
///
</summary>
public
class
SendMail
{
private
MailMessage mailMessage;
private
SmtpClient smtpClient;
private
string
password;
//
发件人密码
/**/
///
<summary>
///
处审核后类的实例
///
</summary>
///
<param name="To">
收件人地址
</param>
///
<param name="From">
发件人地址
</param>
///
<param name="Body">
邮件正文
</param>
///
<param name="Title">
邮件的主题
</param>
///
<param name="Password">
发件人密码
</param>
public
SendMail(
string
To,
string
From,
string
Body,
string
Title,
string
Password)
{
mailMessage
=
new
MailMessage();
mailMessage.To.Add(To);
mailMessage.From
=
new
System.Net.Mail.MailAddress(From);
mailMessage.Subject
=
Title;
mailMessage.Body
=
Body;
mailMessage.IsBodyHtml
=
true
;
mailMessage.BodyEncoding
=
System.Text.Encoding.UTF8;
mailMessage.Priority
=
System.Net.Mail.MailPriority.Normal;
this
.password
=
Password;
}
/**/
///
<summary>
///
添加附件
///
</summary>
public
void
Attachments(
string
Path)
{
string
[] path
=
Path.Split(
'
,
'
);
Attachment data;
ContentDisposition disposition;
for
(
int
i
=
0
; i
<
path.Length; i
++
)
{
data
=
new
Attachment(path[i], MediaTypeNames.Application.Octet);
//
实例化
附件
disposition
=
data.ContentDisposition;
disposition.CreationDate
=
System.IO.File.GetCreationTime(path[i]);
//
获取
附件的创建日期
disposition.ModificationDate
=
System.IO.File.GetLastWriteTime(path[i]);
//
获取附件的修改日期
disposition.ReadDate
=
System.IO.File.GetLastAccessTime(path[i]);
//
获取附
件的读取日期
mailMessage.Attachments.Add(data);
//
添加到附件中
}
}
/**/
///
<summary>
///
异步发送邮件
///
</summary>
///
<param name="CompletedMethod"></param>
public
void
SendAsync(SendCompletedEventHandler CompletedMethod)
{
if
(mailMessage
!=
null
)
{
smtpClient
=
new
SmtpClient();
smtpClient.Credentials
=
new
System.Net.NetworkCredential
(mailMessage.From.Address, password);
//
设置发件人身份的票据
smtpClient.DeliveryMethod
=
System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Host
=
"
smtp.
"
+
mailMessage.From.Host;
smtpClient.SendCompleted
+=
new
SendCompletedEventHandler
(CompletedMethod);
//
注册异步发送邮件完成时的事件
smtpClient.SendAsync(mailMessage, mailMessage.Body);
}
}
/**/
///
<summary>
///
发送邮件
///
</summary>
public
void
Send()
{
if
(mailMessage
!=
null
)
{
smtpClient
=
new
SmtpClient();
smtpClient.Credentials
=
new
System.Net.NetworkCredential
(mailMessage.From.Address, password);
//
设置发件人身份的票据
smtpClient.DeliveryMethod
=
System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Host
=
"
smtp.
"
+
mailMessage.From.Host;
smtpClient.Send(mailMessage);
}
}
}
}
相关文章推荐
- C#发送邮件代码
- C#发送邮件可用代码
- C# 语言中使用Lotus Notes 客户端发送邮件的代码
- C#发送邮件代码
- 使用支持Pop3的邮箱给好友群发邮件. C# .Net 2.0 邮件发送 + XML 读取操作代码.
- C#中发送邮件代码
- c# 发送邮件代码,带附件
- 上一篇c#和outlook发送邮件使用的file类的部分代码
- C#发送邮件代码
- C# .NET 发送邮件 代码
- C#实现发送邮件——核心部分代码
- C#邮件发送代码
- C# 发送邮件代码
- C#.NET发送邮件的实例代码
- C#实现发送邮件——核心部分代码
- C#发送邮件代码
- C#邮件发送代码实现(MailSender.cs)
- C#发送邮件代码
- asp.net C# 发送 邮件 和 附件 代码
- c# 自动发送邮件测试代码