/// <summary>
        /// 发送重置密码邮件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void LinkButton1_Click(object sender, EventArgs e)
        {
            AuthUserOperationPermission(Permission.SendMail);
            int reportid = IntParam;

            if (reportid != 0)
            {
                LossReport   report  = FacadeManage.aideNativeWebFacade.GetLossReport(reportid);
                AccountsInfo account = FacadeManage.aideAccountsFacade.GetAccountInfoByUserID(report.UserID);
                string       site    = FacadeManage.aideNativeWebFacade.GetConfigInfo(EnumerationList.SiteConfigKey.SiteConfig.ToString()).Field2;
                string       sign    = TextEncrypt.MD5EncryptPassword(report.ReportNo + report.UserID + report.ReportDate.ToString().Trim() + report.Random + ApplicationSettings.Get("ReportForgetPasswordKey"));
                string       url     = Game.Utils.Utility.UrlEncode(site + string.Format("/Member/Complaint-Setp-4.aspx?param={0}&sign={1}&test=test", report.ReportNo, sign));

                //邮箱配置
                ConfigInfo     mail       = FacadeManage.aideNativeWebFacade.GetConfigInfo(EnumerationList.SiteConfigKey.EmailConfig.ToString());
                MailConfigInfo mailConfig = new MailConfigInfo();
                mailConfig.Accounts        = mail.Field1.Trim();
                mailConfig.Password        = mail.Field2.Trim();
                mailConfig.Port            = Convert.ToInt32(mail.Field4);
                mailConfig.SmtpServer      = mail.Field3.Trim();
                mailConfig.SmtpSenderEmail = mail.Field1.Trim();
                mailConfig.LossreportUrl   = "";

                Dictionary <string, string> renderVals = new Dictionary <string, string>();
                renderVals.Add("reportNO", report.ReportNo);
                renderVals.Add("userName", report.Accounts);
                renderVals.Add("url", url);
                renderVals.Add("mail", mail.Field1);
                renderVals.Add("sitename", FacadeManage.aideNativeWebFacade.GetConfigInfo(EnumerationList.SiteConfigKey.SiteConfig.ToString()).Field1);
                renderVals.Add("reason", "");
                string file = TextUtility.GetFullPath("/Config/lossReportSuccess.config");
                TMLForgetConfigManager.ConfigFilePath = file;
                MailTMLConfigInfo tmlMail = new MailTMLConfigInfo(TMLForgetConfigManager.LoadConfig().MailContent.Text, TMLForgetConfigManager.LoadConfig().MailTitle);
                Game.Facade.Mail.EmailForgetPassword emailFoget = new Game.Facade.Mail.EmailForgetPassword(mailConfig, tmlMail, renderVals);

                //发送邮件
                try
                {
                    emailFoget.Send(report.ReportEmail);
                    report.ProcessStatus = 1;
                    FacadeManage.aideNativeWebFacade.UpdateLossReport(report);
                    MessageBox("成功发送“申诉成功”邮件");
                }
                catch (Exception ex)
                {
                    MessageBox("邮件发送失败" + ex.ToString());
                }
            }
        }
예제 #2
0
        /// <summary>
        /// 获取加密的MD5,大写的(特意备注:这里是指将你输入的字符串加密成MD5后转为大写,有些傻子以为是先将字符串转大写后加密)
        /// </summary>
        /// <param name="md5_txt">String</param>
        /// <param name="IsMD5">表示加密为:32位或者16位(默认32位)</param>
        /// <returns>返回MD5</returns>
        public static string MD5Upper(this string md5_txt, bool IsMD5 = true)
        {
            if (string.IsNullOrWhiteSpace(md5_txt))
            {
                throw new System.SystemException("该字符串不存在任何内容!");
            }

            //MD5加密
            return(TextEncrypt.MD5EncryptPassword(md5_txt, IsMD5 ? MD5ResultMode.Strong : MD5ResultMode.Weak));
            //var md5 = System.Security.Cryptography.MD5.Create();
            //if (!IsMD5)
            //{
            //    return BitConverter.ToString(md5.ComputeHash(Encoding.UTF8.GetBytes(md5_txt)), 4, 8).Replace("-", "").ToUpper();
            //}
            //var bs = md5.ComputeHash(Encoding.UTF8.GetBytes(md5_txt));
            //var sb = new StringBuilder();
            //foreach (byte b in bs)
            //{
            //    sb.Append(b.ToString("x2"));
            //}
            ////所有字符转为大写
            //return sb.ToString().ToUpper();
        }
예제 #3
0
파일: Utility.cs 프로젝트: ni-xue/Tool.Net
        ///// <summary>
        ///// 转换指定的字符串,以使用 % 字符对保留字符(@、*、_、+、-、. 和 /)进行转义,并以 Unicode 表示法表示它们。
        ///// </summary>
        ///// <param name="str">要转换的字符串。</param>
        ///// <returns>其中的保留字符通过 % 字符进行转义并以 Unicode 表示法表示的 string 的新副本。</returns>
        //public static string Escape(string str)
        //{
        //	return GlobalObject.escape(str);
        //}

        /// <summary>
        /// MD5加密 (32)
        /// </summary>
        /// <param name="s">原文</param>
        /// <returns>密文</returns>
        public static string MD5(string s)
        {
            return(TextEncrypt.MD5EncryptPassword(s));
        }