进一步学习MVC框架

前言

      

       最近要面试了,虽然在项目里学到了很多东西,但是那只能是实战,实战上升到理论或是表达方面,到底还是有一些欠缺,所以还是得回来学习这些理论知识。


MVC概述

  

     MVC的全称是Model View Controller,也就是Model(模型)-View(视图)-Controller(控制器)的缩写,将业务逻辑、数据、界面显示的代码分离,业务逻辑聚集到一个部件里面,在改进和个性化定制界面几用户交互的同时,不需要重新编写业务逻辑,使得同一个程序可以使用不同的表现形式(感觉和建造者模式很像)。使得职责单一,控制更加灵活。MVC用于映射、传统的输入、处理和输出功能在一个逻辑图形化用户界面的结构中。

      

     Model,也就是业务模型,是应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据,它表示应用程序核心。

 

     View,也就是指用户界面,它是应用程序中处理数据显示的部分。通常视图是依据模型数据创建。


     Controller,也就是控制器,,它是应用程序中处理用户交互的部分,控制器负责从视图读取数据,控制用户输入,并向模型发送数据



      MVC中的数据流动和三层架构一样,先从上往下流,然后再从下 往上返回。如下图,先从客户端发送请求到达controller(其实所有请求都是到达相应的Action方法里),然后数据到达controller,controller做三件事:1、处理用户请求;2、调用BLL层,处理业务逻辑;3、把数据返回给view显示。之后controller把处理后的数据传送给model,model再把数据传送给数据库,数据库拿到数据后一层一层往上返回,最后又view展示数据,由aspx页面转换成HTML发送给客户端展示。

        


实例展示


       1、首先创建Model

 

public class UserInfo
    {
        
        public string txtName { get; set; }
      

        [RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$",ErrorMessage="*邮箱格式")]
        public string txtPwd { get; set; }
    }


     2、 然后创建UserInfo控制器

    

public class UserInfoController : Controller
    {
         public ActionResult ShowUserInfo()
        {
            ViewData["User"] = new UserInfo()
            {
                txtName = "shit",
                txtPwd = "123"
            };


            ViewData.Model = new UserInfo() 
            { 
                txtName="shit222",
                txtPwd="1231222"
            };
            return View("Show");


        }
        }


    3、之后在ShowUserInfo添加视图


<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<MvcApplication1.Models.UserInfo>" %>
<%@ Import Namespace="MvcApplication1.Models" %>


<!DOCTYPE html>


<html>
<head runat="server">
    <title>ShowUserInfo</title>
</head>
<body>
    <div>
        <% var user = (UserInfo)ViewData["User"]; %>
        <p>
            <%=user.txtName %>
        </p>
        <% =ViewData.Model.txtName %>


        <%=Model.txtName %>
    </div>
</body>
</html>


4、最后运行,显示结果

                                   


总结


     总结下来,发现自己对MVC的理解更深一步了,欠下的总是要还的,现在就是一步一步慢慢还了。

       

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 56
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 56
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值