在ASP.NET中发送电子邮件的实例教程

作者:袖梨 2022-06-25

首先、导入命名空间:

 代码如下 复制代码

using System.Net.Mail;

定义发送电子邮件的方法[网上很多不同的,可以对比着看一下,WinForm的也适用]:

 代码如下 复制代码

///


/// 发送电子邮件
///

/// 发件人邮箱地址
/// 收件人邮箱地址
/// 邮件主题
/// 邮件内容
///
public bool Send(MailAddress MessageFrom, string MessageTo, string MessageSubject, string MessageBody)
{
 MailMessage message = new MailMessage();
 message.From = MessageFrom;
 message.To.Add(MessageTo); //收件人邮箱地址可以是多个以实现群发
 message.Subject = MessageSubject;
 message.Body = MessageBody;
 message.IsBodyHtml = true; //是否为html格式
 message.Priority = MailPriority.Normal; //发送邮件的优先等级
 SmtpClient sc = new SmtpClient();
 sc.Host = "smtp.qq.com"; //指定发送邮件的服务器地址或IP
 sc.Port = 25; //指定发送邮件端口
 //指定登录服务器的用户名和密码(发件人的邮箱登陆密码)
 sc.Credentials = new System.Net.NetworkCredential("【发件箱地址】", "【发件箱密码】");
 try
 {
  sc.Send(message); //发送邮件
 }
 catch
 {
  return false;
 }
 return true;
}

义发送电子邮件的方法

调用定义的方法,实现发送邮件:

 代码如下 复制代码
///
/// 发送邮件
///

///
///
protected void ForMail(string name, string mail)
{
 try
 {
  //string email = txtemail.Text.Trim();
  MailAddress MessageFrom = new MailAddress("【发件箱地址】"); //发件人邮箱地址
                  string MessageTo = mail; //收件人邮箱地址
  string MessageSubject = bs.HtmlEncode(邮件主题);
  //邮件内容 (一般是一个网址链接,生成随机数加验证id参数,点击去网站验证。)";
  string MessageBody = "" + content1.Value.Trim() + "";
  if (Send(MessageFrom, MessageTo, MessageSubject, MessageBody))
  {
   //Response.Write("发送邮件成功");
  }
  else
  {
   //Response.Write("发送邮件失败");
  }
 }
 catch
             {
  //ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "");
 }
}

调用方法发送邮件
 

不同邮箱的smtp地址都不一样、需要比如QQ的是smtp.qq.com、163的是smtp.163.com

相关文章

精彩推荐