博客园 | 首页 | 新随笔 | 联系 | 订阅 | 管理 MVC 基础和增删改、登录 一、什么是MVC? 1、了解 MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式: Model(模型)表示应用程序核心(比如数据库记录列表)。 View(视图)显示数据(数据库记录)。 Controller(控制器)处理输入(写入数据库记录)。 MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。 2、创建视图引擎:ASPX的MVC 文件--新建--项目--ASP.NET MVC 4 Web应用程序--命名--确定--选择模板:空--视图引擎:ASPX 3、MVC三层 (1)Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。 通常模型对象负责在数据库中存取数据。 (2)View(视图)是应用程序中处理数据显示的部分。 通常视图是依据模型数据创建的。 (3)Controller(控制器)是应用程序中处理用户交互的部分。 通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。 4、控制层 (1)添加控制器 找到Controllers文件夹右键添加控制器,命名:HomeController,不要少Controller (2)动作Action public string one() {return "您好!!";} 5、控制层与视图层 (1)控制层链接视图层 public ActionResult Index()
{return View();
} (2) 添加视图 在“return View();”上右键添加视图,选择ASPX,其余都不选 6、控制层与模型层 (1)在Models文件夹创建Linq,创建数据访问类 (2) 控制层联系模型层 public string two(){string end = "";List<Users> ulist = new UsersData().select();foreach(Users u in ulist){end += u.UserName;end += "\t";}return end;} 7、模型层与视图层 (1)视图层放C#代码 <% %>放C#代码 <%@ %>引用命名空间,声明语言 <%= %>输出一个变量或字段 (2)引用命名空间 <%@ Import Namespace="基础.Models" %> 展示数据 1 <table id="tb" style="width:90%;background-color:navy;margin:auto;text-align:center;">
2 <tr style="color:white;">
3 <td>用户名</td>
4 <td>密码</td>
5 <td>昵称</td>
6 <td>性别</td>
7 <td>出生日期</td>
8 <td>电话</td>
9 <td>邮箱</td>
10 <td>民族</td>
11 <td>地区</td>
12 <td>操作</td>
13 </tr>
14 <%
15 List<Users> ulist = new UsersData().select();
16 foreach (Users u in ulist)
17 {
18 %>
19 <tr class="tr_item" style="background-color:white;<%=u.sexstr %>">
20 <td><%=u.UserName %></td>
21 <td><%=u.PassWord %></td>
22 <td><%=u.NickName %></td>
23 <td><%=u.Sex?"男":"女" %></td>
24 <td><%=u.Birthday.ToString("yyyy年MM月dd日") %></td>
25 <td><%=u.phone %></td>
26 <td><%=u.email %></td>
27 <td><%=u.Nation1.Nationname %></td>
28 <td><%=u.Areastr %></td>
29 <td>
30 <a href="delete?name=<%=u.UserName %>" class="delete">删除</a>
31 <a class="update" href="updateusers?name=<%=u.UserName %>">修改</a>
32 </td>
33 </tr>
34 <% } %>
35
36 </table> 二、MVC增删改 1、添加 (1)视图层: <form name="form1" action="insert1" method="post"> <h2> 人员信息添加</h2> 用 户 名:<input id="Text1" name="usersname" type="text" /> <input id="Submit1" type="submit" value="添加" /> </form> 注意:(1)加上form表单 action="insert1" method="post" 不可少 (2)标签加上name (2)控制层: //添加public ActionResult insert1(string usersname) //括号内放标签的name{Users u = new Users();u.UserName = usersname;new UsersData().insert(u);//调方法添加return RedirectToAction("Index2");//跳转到主页} 2、删除 (1)视图层: <a href="delete?name=<%=u.UserName %>" class="delete">删除</a>//可使用路由传值和问号传值 (2)控制层 public ActionResult delete() {string s=Request["name"];//取出传过来的值new UsersData().delete(s);return RedirectToAction("Index2");} 3、修改 (1)往视图层传值 //跳转到修改页面public ActionResult updateusers(){string s = Request["name"];Users u = new UsersData().select(s);ViewBag.ha = u;//传值return View();} (2)视图层 <% Users u=ViewBag.ha as Users;%>//视图层接收值 <input id="Hidden1" type="hidden" name="usersname" value="<%=u.UserName %>" /> 用 户 名:<span style="color:black;font-size:19px;"><%=u.UserName %></span> 注意:用户名不可更改,标签不用text,使用隐藏域和span 4、路由传值和问号传值 (1)路由传值 控制器的名字必须是Home,用id接收 <a class="update" href="updateusers/<%=u.UserName %>">修改</a> (2)问号传值,用string s = Request["name"];接收 <a class="update" href="updateusers?name=<%=u.UserName %>">修改</a> 三、登录 (1)状态保持 public ActionResult Login1(string usersname, string password)
{Users u = new UsersData().select(usersname);if (u != null){ if (u.PassWord == password){
//Cookies传值并保持状态Response.Cookies["user"].Value = usersname;Response.Cookies["user"].Expires = DateTime.Now.AddDays(7); return RedirectToAction("Index", "Home");}else { return RedirectToAction("Login0", "Login"); }}else{return RedirectToAction("Login0", "Login");} } public ActionResult Index(){if (Request.Cookies["user"] != null)return View();elsereturn RedirectToAction("Login0", "Login");} //退出public ActionResult Exit(){Response.Cookies["user"].Expires = DateTime.Now.AddDays(-10);return RedirectToAction("Login0","Login");} (2)提示错误 使用Session["insertusers"]视图层对其判断 <% if (Session["LoginOK"] == "0"){ %><span style="color:red;font-size:18px;margin-left:50px;">用户名不存在!</span><br /><%}if (Session["LoginOK"] == "1"){%><span style="color: red;font-size:18px;margin-left:50px;">密码错误!</span><br /><% }Session["LoginOK"] = null;}%> 谢谢推荐! 关注我 收藏该文 zhangdandan1 关注 - 0 粉丝 - 3 +加关注 0 0 请先 登录 « 上一篇: GridView » 下一篇: MVC Razor语法 发表于 2016-12-05 23:09 ZHANGDANDAN1 阅读( 36) 评论( 0) 编辑 收藏 刷新评论 刷新页面 返回顶部 注册用户登录后才能发表评论,请 登录 或 注册, 访问网站首页。 【推荐】50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库 【推荐】Google+GitHub联手打造前端工程师课程 【推荐】票选最美云上大数据暨大数据技术峰会 最新IT新闻: · 诺基亚复活老经典机型,葫芦里究竟卖的什么药? · 百度正洽谈投资蔚来汽车 老股东也想跟投 · 拉卡拉递交创业板IPO申请 去年营收超20亿元 · Facebook:Messenger聊天机器人以后不会再唠叨个没完 · 阿里巴巴1.77亿美元投资印度支付工具Paytm旗下电商平台 » 更多新闻... 最新知识库文章: · 垃圾回收原来是这么回事 · 「代码家」的学习过程和学习经验分享 · 写给未来的程序媛 · 高质量的工程代码为什么难写 · 循序渐进地代码重构 » 更多知识库文章... |
发布评论