using System;
using System.Data;
using System.Web.UI;
using System.Data.OracleClient;
using DBUtility;
using System.Text.RegularExpressions;
using System.Net;
using System.Net.Mail;
using System.Xml;
using System.Net.Mime;
using System.Text;
using System.Collections.Generic; public partial class Page_ForgetPass : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ } //提交邮件
protected void btnMailSub_Click(object sender, EventArgs e)
{
//判断用户填入的邮箱地址是否在系统里面注册
if (1 > 2)//自行修改一下
{ }
else
{
string pass = GetPassByEmail(emailAdd);//通过邮件获取密码 //发送邮件修改密码
try
{
Dictionary<string, string> mailInfo = ReadXML();//读取配置文件,获取发送人、收件人信息
string fromEmailAdd = mailInfo["from"];//发件人邮箱地址。如:xxxlong@sina.com
string fromalias = mailInfo["fromalias"];//发件人显示名字(别名,默认情况下显示发件人邮箱地址)。如:小龙,不写发件人则显示xxxlong@sina.com
string fromEmailAddPass = mailInfo["frompass"];//发件人邮箱密码。如:123456——xxxlong@sina.com邮箱登陆密码
string toEmailAdd = emailAdd;//有坚韧邮箱地址。如:892764123@qq.com
string subject = mailInfo["subject"];//邮件标题。如:发送邮件的标题
string body = mailInfo["body"];//邮件正文。如:发送邮件正文
string host = mailInfo["host"];//发送邮件服务器(smtp.加上服务器地址)。如sina.com.cn——新浪域名 MailAddress from = new MailAddress(fromEmailAdd);//发送邮件邮箱地址
MailAddress to = new MailAddress(toEmailAdd);//发送邮件邮箱密码
MailMessage message = new MailMessage();
message.To.Add(to);
message.From = new MailAddress(fromEmailAdd, fromalias, Encoding.UTF8); string bb = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
bb += "<html>";
bb += "<head>";
bb += "<title></title>";
bb += "<style type=\"text/css\">";
//bb += "div{ width:100px; height:100px; background-color:Red;}";
bb += "</style>";
bb += "</head>";
bb += "<body>";
bb += "<div>";
bb += "尊敬的用户,您的密码是:" + pass + ",请妥善保管您的密码!【世友租车】";
bb += "</div>";
bb += "</body>";
bb += "</html>"; message.IsBodyHtml = true;//是否是html
message.Priority = MailPriority.High;//优先级
message.Subject = subject;//发送邮件标题
message.SubjectEncoding = Encoding.UTF8;//标题编码
message.Body = bb;
message.BodyEncoding = Encoding.UTF8;//正文编码
SmtpClient client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Port = 25;
client.Host = "smtp." + host;//发送邮件服务器地址
client.Credentials = new System.Net.NetworkCredential(fromEmailAdd, fromEmailAddPass);//发送邮件邮箱地址和密码 client.Send(message);
string mess = Server.UrlEncode("密码已发送到您指定的邮箱,请注意查收!");
Response.Redirect("BackPass.html?mess=" + mess);
}
catch (Exception ex) { }
}
}
catch (Exception ex) { }
} //读取配置文件,获取邮件发送服务器信息
private Dictionary<string, string> ReadXML()
{
Dictionary<string, string> hashMail = new Dictionary<string, string>();
try
{
XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("xml/mail.xml"));//加载xml文件 XmlNode root = xmlDoc.SelectSingleNode("mailinfo");//获取根节点 //遍历所有节点,根节点除外。
//将所有的节点名字和内容以键值对的方式存储。
if (root.HasChildNodes)
{
foreach (XmlNode node in root.ChildNodes)
{
hashMail.Add(node.Name, node.InnerText);
}
}
}
catch (Exception ex) { }
return hashMail;
}
}

asp.net利用SmtpClient发送邮件的更多相关文章

  1. 利用SmtpClient发送邮件

    1  163邮箱 HOST:smtp.163.com public static string CreateTimeoutTestMessage(string server) { string Suc ...

  2. 利用System.Net.Mail 的SmtpClient发送邮件

    原文:利用System.Net.Mail 的SmtpClient发送邮件 几个月前总结过关于Jmail发送邮件,当时用Jmail发送邮件发送速度有点慢(可能对Jmail了解不是很多).现在改为用微软提 ...

  3. SmtpClient 发送邮件

    利用SmtpClient 代码发送邮件. 简单测试代码: static void Main(string[] args) { MailMessage msg = new MailMessage(); ...

  4. java利用commons-email发送邮件并进行封装

    本例中利用commons-email发送邮件并进行封装,支持html内容和附件:Commons Email是Apache的Commons子项目下的一个邮件客户端组件,它是基于JavaMail的,大大简 ...

  5. [ASP.NET]利用itextsharp将GridView汇出PDF档

    原文 [ASP.NET]利用itextsharp将GridView汇出PDF档 最近在讨论区看到有人说itextsharp可以把网页变成PDF 小弟就去抓一下itextsharp来玩玩,先教大家最实用 ...

  6. linux利用sendmail发送邮件的方法

    Linux利用sendmail发送邮件, 方法1 安装sendmail即可使用, mail -s "test" user@sohu.com bin/mail会默认使用本地sendm ...

  7. asp.net利用存储过程分页代码

    -最通用的分页存储过程 -- 获取指定页的数据 CREATE PROCEDURE Pagination ), -- 表名 ) = '*', -- 需要返回的列 )='', -- 排序的字段名 , -- ...

  8. 利用JavaMail发送邮件:smtp.163.com

    一.利用JavaMail发送邮件案例: 1.maven项目结构: 2.先在pom.xml里边加入Javamail依赖,系统会根据坐标自动下载mail包(前提是配置好了maven): 3.配置email ...

  9. SmtpClient发送邮件时附件名称乱码

    在用户环境发现一个现象,使用System.Net.Mail.SmtpClient发送邮件,当附件名包含中文且长度较长时,最终的邮件里附件名会乱掉,写个简单的测试程序: var mail = new M ...

随机推荐

  1. 线上服务的FGC问题排查

    转载:https://blog.csdn.net/g6U8W7p06dCO99fQ3/article/details/106088467 线上服务的GC问题,是Java程序非常典型的一类问题,非常考验 ...

  2. org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, "enterpCd")-Mybatis报错

    一.问题由来 下午快要下班时,登录测试服务器查看日志信息,看看有没有新的异常信息,如果有的话好及时修改.结果一看果然有新的异常信息. 主要的异常信息如下: 2020-10-13 14:51:03,03 ...

  3. 2014年 实验四 B2B模拟实验(二)

    [实验目的] ⑴.熟悉电子合同签订过程 ⑵.掌握网上招标的流程并体会招标对采购商带来的好处 [实验条件] ⑴.个人计算机一台 ⑵.计算机通过局域网形式接入互联网 ⑶.电子商务模拟实验室软件包. [知识 ...

  4. 三门峡6378.7939(薇)xiaojie:三门峡哪里有xiaomei

    三门峡哪里有小姐服务大保健[微信:6378.7939倩儿小妹[三门峡叫小姐服务√o服务微信:6378.7939倩儿小妹[三门峡叫小姐服务][十微信:6378.7939倩儿小妹][三门峡叫小姐包夜服务] ...

  5. 【UR #12】实验室外的攻防战

    UOJ小清新题表 题目内容 依然没有粘题面主要是UOJ的题面都太长了qwq UOJ链接 一句话题意:给出两个序列 \(A\) 和 \(B\),对于 \(A\) 进行若干次操作,每次给出一个 \(i\) ...

  6. Vue.js 学习笔记之五:编译 vue 组件

    正如上一篇笔记中所说,直接使用 ES6 标准提供的模块规范来编写 Vue 组件在很多情况下可能并不是最佳实践.主要原因有两个,首先是市面上还有许多并没有对 ES6 标准提供完全支持的 Web 浏览器, ...

  7. docker-阿里云加速

    系统版本 centos7 阿里云登录 ->容器镜像服务->镜像加速器 复制下面的直接执行即可     sudo mkdir -p /etc/docker sudo tee /etc/doc ...

  8. centos8平台安装redis6.0.1

    一,redis的官网: https://redis.io/ redis6于5月3日正式发布,它的新增功能: acl 多线程io cluster proxy resp3协议 本文演示redis6.0.1 ...

  9. centos8平台使用lsof

    一,lsof的用途 lsof,List Open Files 列出当前系统打开文件的工具. 在linux环境下,任何事物都以文件的形式存在, 所以lsof通过文件不仅仅可以访问常规数据,还可以访问网络 ...

  10. 面经分享:看非科班研究生如何转行斩获 ATM 大厂的 Offer ?

    前言 先介绍一下自己的情况吧,本科和研究生都是通信专业,本科是某 Top2,研究生是香港某大学.了解了通信行业的就业情况和工作内容后,大概今年3月份的时候开始想转互联网. 本人相关的基础情况是:学校学 ...