PHP群:95885625 Hbuilder+MUI群:81989597 站长QQ:634381967
    您现在的位置: 首页 > 开发编程 > ASP.NET教程 > 正文

    .NET MVC框架介绍

    作者:admin来源:jb51浏览:时间:2020-09-30 00:07:50我要评论
    导读:MVC是一种架构设计模式,该模式主要应用于图形化用户界面(GUI)应用程序。那么什么是MVC?MVC由三部分组成:Model(模型)、View(视图)及Controller(控制器)。
    MVC概念 
     
    MVC是一种架构设计模式,该模式主要应用于图形化用户界面(GUI)应用程序。那么什么是MVC?MVC由三部分组成:Model(模型)、View(视图)及Controller(控制器)。 
     
    Model即应用程序的数据模型。任何应用程序都离不开数据,数据可以存储在数据库中、磁盘文件中,甚至内存中。Model就是对这些数据的抽象,不论数据采取何种存储形式,应用程序总是能够通过Model来对数据进行操作,而不必关心数据的存储形式。数据实体类就是常用的一种Model。例如,一个客户管理应用程序使用数据库来存储客户数据,数据库表中有一个客户表Customer,相应的程序中一般会建立一个数据实体类Customer来与之对应,这个实体类即使客户表的Model。 
     
    View是应用程序的界面。用户通过View来操作应用程序,完成与程序的交互。View提供了可视化的界面来显示Model中定义的数据,用户通过View来操作数据,并将对Model数据操作的结果返回给用户。在桌面应用程序中,View可能是一个或多个Windows窗体。在Web应用程序中,View是由一系列网页构成,在ASP.NET网站中即为.aspx页面。 
     
    Controller 定义了程序的应用逻辑。用户通过View发送操作命令给Controller,由Controller按照程序设计的逻辑来更新Model定义的数据,并将操作结果通过View返回给用户。
     
    .NET MVC框架介绍

    .NET Web开发中MVC设计模式的实现 
     
    ASP.NET 1.x中使用了CodeBehind技术,彻底终结了传统ASP程序开发的梦魇:程序逻辑与HTML界面元素混杂在一起。CodeBehind技术将代表程序界面(View)的.aspx文件与逻辑(Controller)代码.vb/.cs文件的分离即是一种MVC式的设计。ASP.NET 2.0中又出现了CodeBeside技术,即一个.aspx文件可以有多个.vb/.cs文件,这又方便了界面与逻辑代码的进一步分离。 
     
    2008年3月微软发布了针对ASP.NET 3.5 的MVC框架 (Preview 2 版本)。这是一个真正意义上的ASP.NET MVC框架。该框架可以说是对之前为开发人员所熟悉的基于Web Form的应用程序开发方式的"颠覆"。变化可谓"震撼": 
     
    1. 使用URL Routing技术:Web程序的URL不再是指向具体的物理页面.aspx,而是指向某个Controller的某个方法。一个典型的MVC架构的程序,其URL可能如下所示: 
     
    http://www.mysite.com/Customer/Index 
     
    使用该MVC架构的程序其URL不必有文件扩展名。上面这个URL中的Customer即为Controller的名字。而Index是Customer定义的一个方法名。 
     
    2. Web程序的界面.aspx不再使用服务器端的Form: 
     
    <asp: form runat="server"></form> 
     
    那么与服务器端的Form相关的Postback以及页面生命周期的事件也不存在了。 
     
    3. 页面中不再有View State。MVC下将不能使用View State来存储程序状态信息。 
     
    4. 不再提供依赖于服务器端Form的服务器控件事件,开发人员熟悉的Button_Clicked事件在MVC下将不再需要。 
     
    NET MVC示例 
     
    安装完 ASP.NET MVC Preview 2后,VS2008中会添加一个新的项目模板"ASP.NET MVC Web Application", 如下图所示 

    .NET MVC框架介绍

    新建该项目后, VS2008自动生成项目的文件结构如下, MVC三个组成部分各有一个文件夹来存储各自的程序文件。

    .NET MVC框架介绍

    前面提到的URL Routing即在Global.asax.cs中设置:

     
     
    复制代码代码如下:
    1.  
    2. public class GlobalApplication : System.Web.HttpApplication
    3.     {
    4.         public static void RegisterRoutes(RouteCollection routes)
    5.         {
    6.             // 注意: IIS7以下的IIS版本需将URL格式设置为 "{controller}.mvc/{action}/{id}" to enable
    7.             routes.Add(new Route("{controller}.mvc/{action}/{id}", new MvcRouteHandler())
    8.             {
    9.                 Defaults = new RouteValueDictionary(new { action = "Index", id = "" }),
    10.             });//设置URL Routing格式
    11.  
    12.             routes.Add(new Route("Default.aspx", new MvcRouteHandler())
    13.             {
    14.                 Defaults = new RouteValueDictionary(new { controller = "Customer", action = "Index", id = "" }),
    15.             });//设置默认URL指向Customer Controller的Index方法
    16.         }
    17.  
    18.         protected void Application_Start(object sender, EventArgs e)
    19.         {
    20.             RegisterRoutes(RouteTable.Routes);
    21.         }
    22. }

    【代码1】:Global.asax.cs 
     
    下面来实现Customer 的Model、Contro
    转载请注明(B5教程网)原文链接:https://b5.mxunkeji.com/content-11-244-1.html
    相关热词搜索: MVC