一、什么是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();            else                return 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语法