MVC新闻网站建立,实现登录功能
首先在数据库中建立一张UserInfo表。
注:以下讲的这些可以用动软代码生成器直接生成,但是对于新手来说还是动手敲一下的好,了解以下实现的过程。
然后在Model中建立UserInfo的实体层。
public class UserInfo { public int Id { get; set; } public string UserName { get; set; } public string UserPwd { get; set; } public string UserMail { get; set; } public DateTime RegTime { get; set; } }
接着就在DAL层中建立UserInfo的数据库访问
//根据用户名密码查询用户 public UserInfo GetUserInfoModel(string userName, string userPwd) { string sql = "select * from T_UserInfo where UserName=@UserName and UserPwd=@UserPwd"; SqlParameter[] pms = { new SqlParameter("@UserName",SqlDbType.NVarChar,32), new SqlParameter("@UserPwd",SqlDbType.NVarChar,32) }; //给参数赋值 pms[0].Value = userName; pms[1].Value = userPwd; DataTable dt = SqlHelper.ExcuteDataTable(sql, CommandType.Text, pms); UserInfo userInfo = null; if (dt.Rows.Count>0) { userInfo = new UserInfo(); LoadEntity(dt.Rows[0],userInfo); } return userInfo; } private void LoadEntity(DataRow dataRow, UserInfo userInfo) { userInfo.Id = Convert.ToInt32(dataRow["Id"]); //判断是否为空 userInfo.UserName = dataRow["UserName"] != DBNull.Value "UserName"].ToString() : string.Empty; userInfo.UserPwd = dataRow["UserPwd"] != DBNull.Value "UserPwd"].ToString() : string.Empty; userInfo.UserMail = dataRow["UserMail"] != DBNull.Value "UserMail"].ToString() : string.Empty; userInfo.RegTime = Convert.ToDateTime(dataRow["RegTime"]); }
在BLL层中建立UserInfo的逻辑处理层UserInfoServices
DAL.UserInfoDal userInfoDal = new DAL.UserInfoDal(); public UserInfo GetUserInfoModel(string userName, string userPwd) { return userInfoDal.GetUserInfoModel(userName, userPwd); }
这些都准备完毕后就到登录页面提交表单就可以了(在提交表单之前需要判断用户名、密码、验证码是否为空,下面我做了一个简单的判断)
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>登录</title> <script src="/UploadFiles/2021-04-02/jquery-1.8.2.js">在上面的代码可以看出我是用的ajax异步提交表单到了 /Login/CheckLogin 路径下这代表 Login控制器下的CheckLogin (需要自己新建) 也就是说登录的逻辑判断处理就是在CheckLogin 里面完成的。
public ActionResult CheckLogin() { //拿到session的值 string Vcode = Session["validateCode"].ToString(); //清空session Session["validateCode"] = null; string requestCode = Request["txtVcode"].ToString(); string userName = Request["txtName"].ToString(); string userPwd = Request["txtPwd"].ToString(); if (!requestCode.Equals(Vcode,StringComparison.CurrentCultureIgnoreCase)) { return Content("no:验证码错误!!"); } BLL.UserInfoServices userInfoServices = new BLL.UserInfoServices(); UserInfo userinfo = userInfoServices.GetUserInfoModel(userName, userPwd); if (userinfo != null) { Session["userName"] = userinfo.UserName; return Content("ok:登录成功"); } else { return Content("no:用户名或者密码错误"); } }注:连接数据库的语句自己在配置文件里面配置
上面的步骤每步都正确的话,那么重新生成解决方案后,运行输入用户名密码就可以登录成功了
这里可以看到页面已经实现了跳转。只是主页还没有建立而已。下一讲就讲主页的布局。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】