MVC登录案例
1.在Controllers文件夹里面新建一个控制器HomeController;
2.在默认的Index方法里面添加一个视图,名字跟Controller中的方法名一样叫Index,添加后的视图文件会在Views文件夹Home下面,名字为:Index.cshtml,Home文件夹会自动添加;
3.打开视图文件Index.cshtml,添加如下html代码:
@Html.ActionLink("登录","Login","Home")等价于<a href="/Home/Login">登录</a>
4.设置Web.config配置文件,在connectionStrings节点下添加:
<add name="connstr" connectionString="server=PC-888;user id=sa;password=123;database=sy" />
5.在Model层添加一个类UsersModel.cs,用于访问数据库的数据,代码如下:
访问前先编写SQLHelper
public int UsersLogin(string username,string password)
{
int r = (int)SQLHelper.ExecuteScalar("select count(*) from Users where username=@username and password=@password",
new SqlParameter { ParameterName = "@username", Value = username },
new SqlParameter { ParameterName = "@password", Value = ProcessHelp.MD5(password) });
return r;
}
6.在Model层添加一个类ProcessHelp.cs,用于处理常用的数据,代码如下:
public static string MD5(string toCryString)
{
MD5CryptoServiceProvider hashmd5;
hashmd5 = new MD5CryptoServiceProvider();
return BitConverter.ToString(hashmd5.ComputeHash(Encoding.Default.GetBytes(toCryString))).Replace("-", "").ToLower();
}
7.在控制器HomeController.cs下面添加一个方法:
public ActionResult Login(string n)
{
string username = Request.Form["txtname"];
string password = Request.Form["txtpwd"];
//先获取表单的值
if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password))
{
return View();
}
UsersModel users = new UsersModel();
int r = users.UsersLogin(username, password);
if (r > )
{
return Redirect("/TIPTOP/Index");//重定向后的控制器地址,TIPTOP为控制器前面的名字,Index为方法
}
return View();
}
8.在控制器HomeController下的方法Login添加一个视图
<form action="/Home/Login" method="post">
<table>
<tr>
<td>用户名:</td><td><input type="text" name="txtname" /></td>
</tr>
<tr>
<td>密码:</td><td><input type="password" name="txtpwd" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="btnOK" value="登录" /></td>
</tr>
</table>
</form>
等价于:
@using(Html.BeginForm())
{
<table>
<tr><td>用户名:</td><td>@Html.TextBox("txtname")</td></tr>
<tr><td>密码:</td><td>@Html.Password("txtpwd")</td></tr>
<tr><td colspan="2"><input type="submit" name="name" value="登录 " /></td></tr>
</table>
}
MVC登录案例的更多相关文章
- Spring Security Oauth2 单点登录案例实现和执行流程剖析
Spring Security Oauth2 OAuth是一个关于授权的开放网络标准,在全世界得到的广泛的应用,目前是2.0的版本.OAuth2在“客户端”与“服务提供商”之间,设置了一个授权层(au ...
- Android first---文件读取(登录案例编写为主)
以android登录案例来介绍文件的读取与androidAPI给予的方法 第一步:绘制界面 绘制方法:在线性布局下面设置相对布局 代码部分: <LinearLayout xmlns:androi ...
- ADO.NET学习系列(三)----做一个登录案例
总体思路.根据用户输入的用户名和密码,来判断,和数据库里面存的是不是一样,如果一样就表明登录成功,否则就登录失败. 方案一: 1.select* from 表名 where username=&quo ...
- 基于Struts2框架实现登录案例 之 使用Struts2标签库简化表单+继承ActionSupport完成输入交验
一,使用Struts2标签库简化表单 在文章[基于Struts2框架实现登录案例]的基础上,通过使用Struts标签库可以简化登录页面login2.jsp <%@ page language=& ...
- 简单登录案例(SharedPreferences存储账户信息)&联网请求图片并下载到SD卡(文件外部存储)
新人刚学习Android两周,写一个随笔算是对两周学习成果的巩固,不足之处欢迎各位建议和完善. 这次写的是一个简单登录案例,大概功能如下: 注册的账户信息用SharedPreferences存储: 登 ...
- Android(java)学习笔记213:开源框架post和get方式提交数据(qq登录案例)
1.前面提到Http的get/post方式 . HttpClient方式,实际工作的时候不常用到,因为这些方式编写代码是很麻烦的 2.Android应用会经常使用http协议进行传输,网上会有很完善 ...
- Android(java)学习笔记212:中文乱码的问题处理(qq登录案例)
1.我们在之前的笔记中LoginServlet.java中,我们Tomcat服务器回复给客户端的数据是英文的"Login Success","Login Failed&q ...
- Spring mvc登录拦截器
自己实现的第一个Spring mvc登录拦截器 题目要求:拒绝未登录用户进入系统,只要发现用户未登录,则将用户请求转发到/login.do要求用户登录 实现步骤: 1.在spring的配置文件中添加登 ...
- MVC 小案例 -- 信息管理
前几次更新博客都是每次周日晚上到周一,这次是周一晚上开始写,肯定也是有原因的!那就是我的 Tomact 忽然报错,无法启动,错误信息如下!同时我的 win10 也崩了,重启之后连 WIFI 的标志也不 ...
随机推荐
- You've got to find what you love
你必须找到你爱的东西 You've got to find what you love 史蒂夫乔布斯2005年6月在斯坦福大学毕业典礼上的演讲 I am honored to be with you ...
- vim YouCompleteMe
http://www.ithao123.cn/content-1906969.html http://www.it165.net/os/html/201503/12190.html
- Spring学习2—Spring容器
一.Spring容器接口关系 容器是Spring框架的核心,Spring容器就是一个巨大的工厂.Spring容器使用Ioc(控制反转(Inversion of Control )管理所有组成应用系统的 ...
- 使用Tengine替代Nginx作为负载均衡服务器
Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检 ...
- nuget pack
nuget spec nuget setApiKey yourkeynuget pack PluginMvc.Framework.csproj -Prop Configuration=Releasen ...
- 【MVC5】ASP.NET MVC 项目笔记汇总
ASP.NET MVC 5 + EntityFramework 6 + MySql 先写下列表,之后慢慢补上~ 对MySql数据库使用EntityFramework 使用域用户登录+记住我 画面多按钮 ...
- WPF 组合快捷键
if(e.KeyStates == Keyboard.GetKeyStates(Key.F4) && Keyboard.Modifiers == ModifierKeys.Alt) { ...
- AppCompat学习(1)-AppCompatSpinner
andriod中的spinner控件一共有两个,一个是本身的Spinner,一个是android.support.v7.widget.AppCompatSpinner. 两者的区别在于v7内的Spin ...
- emmet-vim
最近啊,我投奔了网页的开发,看了一本<head first HTML and CSS>的书,感觉非常不错,然后又配置了一些vim里面用到的插件,现在我把学习到的东西记录下来! 首先,我不会 ...
- UVa12726 one Friend at a Time (位 广搜)
题目链接:UVa12726 是个PDF,不好复制进来. 大意:有个人要追个妹子,想加妹子QQ,但是不知道谁规定的,玩QQ的人要加好友必须先要有至少k个共同好友.共有N个人玩QQ,编号为1到N,1是男主 ...