博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
密码邮箱验证
阅读量:4691 次
发布时间:2019-06-09

本文共 1068 字,大约阅读时间需要 3 分钟。

/// <summary>

        /// 重置密码
        /// </summary>
        /// <param name="username"></param>
        /// <param name="email"></param>
        /// <returns></returns>
        public ResetPasswordStatus ResetPassword(string username, string email)
        {
            MembershipUserCollection users = Membership.FindUsersByName(username);
            if (users.Count <= 0)//用户名未找到
            {
                //不要在BLL、DAL等非UI层来进行UI层的操作(比如MessageBox、Redirect)
                return ResetPasswordStatus.UserNameNotFound;
            }
            else if (users.Count > 1)
            {
                throw new Exception("存在多个重名的用户名:"+username);
            }
            MembershipUser user = users[username];
            if (email != user.Email)//Email不匹配
            {
                return ResetPasswordStatus.EmailInvalid;
            }
            //重置密码
            string newPwd = user.ResetPassword();//重置为新密码
          
            //生成一个简单的随机的新密码
            //一种思路是用生成验证码的随机数算法
            //或者也可以使用取巧的办法,就是取Guid的后六位
            string guid = Guid.NewGuid().ToString();
            string newSimplePwd = guid.Substring(guid.Length - 6);
            user.ChangePassword(newPwd, newSimplePwd); //把ResetPassword返回的复杂的密码改成新密码

            CommonHelper.SendEmail(user.Email,

                "您在xx网的新密码", "。。新密码是:" + newSimplePwd);
            return ResetPasswordStatus.Success;
        }

转载于:https://www.cnblogs.com/elephant-wp/archive/2011/12/09/2282460.html

你可能感兴趣的文章
xgboost gbdt特征点分烈点
查看>>
python实现单例模式及应用场景
查看>>
简单Servlet页面交互代码解读
查看>>
架构学习提炼笔记(1):架构设计的基本概念以及设计的三大原则
查看>>
图的最短路径-----------SPFA算法详解(TjuOj2831_Wormholes)
查看>>
crm02 stark组件(自定义Django-admin)之运行流程
查看>>
IOS-WebViewJavascriptBridge使用说明
查看>>
201506051031_《JavaScript权威指南》(p104-143)
查看>>
QT && GDAL
查看>>
【BZOJ-1026】windy数 数位DP
查看>>
Java NIO系列教程(三) Buffer
查看>>
LeetCode的一道题的个人见解
查看>>
IOS的滑动菜单(Sliding Menu)的具体写法(附代码)
查看>>
Gitbook 使用入门
查看>>
opencv测试分类器性能 opencv_performance.exe 使用方法 及参数含义_majian_新浪博客
查看>>
FTPS Firewall
查看>>
菜机互啄 计算机的一些基本知识 持续更新
查看>>
面向对象第二次博客作业
查看>>
JAVA_Could not find property [struts.actionMapping]怎么办
查看>>
python 标准内建函数
查看>>