在C#MVC项目中使用邮箱(验证码验证)[操作系统入门]
1.生成随机数
///<summary>/// 生成验证码
///</summary>
///<returns>验证码</returns>
publicstaticstring code()
{
string vc = "";
Random rNum = new Random();//随机生成类
int num1 = rNum.Next(0, 9);//返回指定范围内的随机数
int num2 = rNum.Next(0, 9);
int num3 = rNum.Next(0, 9);
int num4 = rNum.Next(0, 9);
int[] nums = newint[4] { num1, num2, num3, num4 };
for (int i = 0; i < nums.Length; i++)//循环添加四个随机生成数
{
vc += nums[i].ToString();
}
return vc;
}
2.写一个发送邮箱的方法
///<summary>/// 发送邮件的方法
///</summary>
///<param name="mailTo">要发送的邮箱</param>
///<param name="mailSubject">邮箱主题</param>
///<param name="mailContent">邮箱内容</param>
///<returns>返回发送邮箱的结果</returns>
publicstaticbool SendEmail(string mailTo, string mailSubject, string mailContent)
{
// 设置发送方的邮件信息,例如使用腾讯的smtp
string smtpServer = "smtp.qq.com"; //SMTP服务器
string mailFrom = "[email protected]"; //登陆用户名
string userPassword = "xxx";//登陆密码,如果使用的是腾讯的 用的是授权码
// 邮件服务设置
SmtpClient smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式
smtpClient.Host = smtpServer; //指定SMTP服务器
smtpClient.EnableSsl = true;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword);//用户名和密码
// 发送邮件设置
MailMessage mailMessage = new MailMessage(mailFrom, mailTo); // 发送人和收件人
mailMessage.Subject = mailSubject;//主题
mailMessage.Body = mailContent;//内容
mailMessage.BodyEncoding = Encoding.UTF8;//正文编码
mailMessage.IsBodyHtml = true;//设置为HTML格式
mailMessage.Priority = MailPriority.Low;//优先级
try
{
smtpClient.Send(mailMessage); // 发送邮件
returntrue;
}
catch (SmtpException ex)
{
returnfalse;
}
}
3.使用邮箱
//获取邮箱验证码(使用session要注意:在Global.asax里需要配置)publicbool EmailCode(string Email)
{
//1.将验证码存给session
HttpContext.Current.Session["ValidateYZMode"] = Email_Code.code();
HttpContext.Current.Session["ValidateEmail"] = Email;
//2.获取验证码、邮箱
YzmCode = HttpContext.Current.Session["ValidateYZMode"].ToString();
EmailYZCode = HttpContext.Current.Session["ValidateEmail"].ToString();
string strBody = "嗨喽,终于等到您啦!<br/><br/>欢迎注册创客优选,您的验证码为:<span style=‘color:red;font-weight:bold;font-size:18px;‘>" + YzmCode + "</span><br/>(5分钟内有效)<br/><br/>工作人员不会向您索要密码、验证码等信息。如非本人操作,请联系创客优选客服或忽略本条信息。<br/><br/>";
//3.发送邮箱
bool result=Email_Code.SendEmail(Email, "创客优选", strBody);
if (result == true)
{
returntrue;
}else
{
returnfalse;
}
}
在C#MVC项目中使用邮箱(验证码验证)
原文:https://www.cnblogs.com/liutaovip/p/12763462.html
以上是 在C#MVC项目中使用邮箱(验证码验证)[操作系统入门] 的全部内容, 来源链接: utcz.com/z/515798.html