1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > [Asp.Net MVC4]验证用户登录实现实例

[Asp.Net MVC4]验证用户登录实现实例

时间:2018-09-21 08:33:33

相关推荐

[Asp.Net MVC4]验证用户登录实现实例

后端开发|C#.Net教程

mvc 登录验证

后端开发-C#.Net教程

最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目。

源码中 php= 搜索的内容,vscode自结束标签,9370装ubuntu,tomcat下文件被删,安卓留言板项目sqlite,一直梦到洞里往里面爬虫子,php 站内消息,品牌推广设计seo顾问,html5美食网站,网站网页模板lzw

既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的登陆又不一样,以下是我一下午+一晚上的研究成果~~~

网站会员系统源码,ubuntu复制文件改名,大公司爬虫,php fileto,seo属于什么lzw

首先,建好数据库以及表,这就不用说了吧。

vc源码交易,vscode排版没有,中国版ubuntu下载,tomcat 占用cpu,进程共同访问sqlite,jqueryslider轮播插件,手机pc前端框架推荐,百艺花鸟 爬虫,php is null,百度seo规则,润滑油手机网站模板,网页抽奖系统制作方法,手机会员中心投稿模板,php 页面访问统计,基于php的企业内部人事管理系统 源程序,c 贪吃蛇程序lzw

下面说一下主要的结构

控制器:

HomeController 这是主页的控制器

LoginController 这是登陆的控制器

类:

CDBTemplate.cs 这是数据库数据对应的类,里边描述的是数据库的结构

////////////////////////////////////////////我是分割线\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

首先在HomeController 控制器的返回函数

public ActionResult Index(){...}

前面加上:

[Authorize(Roles = "admins")]

就是这样:

[Authorize(Roles = "admins")]public ActionResult Index(){ ...}

这条语句的意思是在这加上一个权限验证,只允许用户角色是admins的用户访问

然后再web.config文件里添加:

这些的意思是给整个网站增加用户验证,指向的登陆界面是login这个控制器

CDBTemplate.cs文件里的一个类:

public class LogOnModel { [Required] [Display(Name = "用户名")] public string UserName { get; set; } [Required] [DataType(DataType.Password)] [Display(Name = "密码")] public string Password { get; set; } [Display(Name = "下次自动登陆")] public bool RememberMe { get; set; } }

然后为LoginController 控制器的默认返回函数增加一个视图Index.cshtml,在页面里面加上下面的代码:

@model Weibo.Models.LogOnModel //LogOnModel 是CDBTemplate.cs文件里的一个类@using (Html.BeginForm("Login","Login",FormMethod.Post)) { @Html.TextBoxFor(m => m.UserName) @Html.ValidationMessageFor(m => m.UserName, "请输入用户名!", new {style="color: #f00" })@Html.PasswordFor(m => m.Password) @Html.ValidationMessageFor(m => m.Password,"请输入密码!",new {style="color: #f00" })@Html.CheckBoxFor(m => m.RememberMe) @Html.LabelFor(m => m.RememberMe)@Html.ActionLink("忘记密码", "forgotpwd", null, new {@class="rt",target="_blank" })}

在上面的代码里Html.BeginForm(“Login”,”Login”,FormMethod.Post)方法的第一个参数的意思是指定要调用的控制器的方法的名字,第二个参数的意思是控制器的名字,第三个参数的意思是用什么方法把表单提交给服务器,这里我们为了安全,选择用post方式提交。

然后在LoginController 控制器中增加这么一个方法:

[HttpPost, ActionName("Login")] public void Login(FormCollection collection) {object obj = SqlHelper.ExecuteScalar("select UserId from CDBUsers where UserName=@uname and Password=@pwd", new SqlParameter("@uname", collection[0]), new SqlParameter("@pwd", Weibo.Models.Myencrypt.myencrypt(collection[1])));if (obj != null){ FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1,collection[0],DateTime.Now,DateTime.Now.AddMinutes(30),false,"admins"); string encryptedTicket = FormsAuthentication.Encrypt(authTicket); System.Web.HttpCookie authCookie = new System.Web.HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); System.Web.HttpContext.Current.Response.Cookies.Add(authCookie);}Response.Redirect("~/"); }

好了,搞定了~~~~

更多[ MVC4]验证用户登录实现实例相关文章请关注PHP中文网!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。