ASP.NET MVC教程:理解模型、视图和控制器
ASP.NET MVC应用程序示例 用Visual Studio默认模板创建ASP.NET MVC Web应用程序时,会附带创建一个非常简单的实例程序,可以用来帮助理解ASP.NET MVC程序中的各个组成部分,本文我们就用这个示例进行讲解。 在Visual Studio 2008中点击“文件” > “新建项目”,选择“ASP.NET MVC”模板创建一个ASP.NET MVC应用程序,如图1所示,在新建项目对话框中,在项目类型下选择你熟悉的编程语言,如Visual Basic 或 C#,然后在模板下选择“ASP.NET MVC Web Application”模板,点击确定按钮。 图1 新建项目对话框 你在创建一个新的ASP.NET MVC应用程序时,会显示一个创建新的单元测试项目对话框,如图2所示,这个对话框让你可以单独为你的方案创建一个项目测试你的ASP.NET MVC应用程序,这里选择选项“不,不创建测试项目”,然后点击确定按钮。 图2 创建单元测试对话框 创建好ASP.NET MVC应用程序后,在方案浏览窗口你会看到有几个文件夹和文件,特别地,你会看到模型(Models)、视图(Views)和控制器(Controllers)三个文件夹,正如你从这些文件夹的名字猜测到的,这些文件夹包括了模型、视图和控制器的实现文件。 如果你展开控制器文件夹,应该会看到一个名叫HomeController.vb的文件,如果你展开视图文件夹,应该会看到两个子文件夹,一个是Home,一个Shared,如果你展开Hom文件夹,你应该会看到两个文件:about.aspx和Home.aspx(如图3所示)。这些文件就组成了使用ASP.NET MVC默认模板创建的应用程序。 图3 方案浏览窗口 通过选择菜单项“调试” > “开始调试”,可以运行这个示例程序,同样,按F5键也一样。 当你第一次运行ASP.NET MVC应用程序时,会显示图4所示的对话框,建议你开启调试模式,点击确定按钮后程序开始运行。 当你运行ASP.NET MVC应用程序时,Visual Studio会在你的浏览器中启动应用程序,示例应用程序由两个页面组成:Index页面和About页面。当应用程序第一次启动时显示Index页面(如图5所示),你可以点击程序右上角链接切换到About页面。 图4 调试没有开启对话框 注意浏览器地址栏中的URL,当你点击Home链接时,浏览器地址栏中的URL改变为/Home,当你点击About链接时,URL改成/About。 如果你关掉浏览器返回Visual Studio窗口,你看不到有Home和About文件存在,怎么可能呢? 一个URL不等于一个页面 当你构建一个传统的ASP.NET Web窗体应用程序或ASP应用程序时,一个URL就对应一个页面,它们是一对一的关系,如果你向服务器请求一个名叫SomePage.aspx的页面,那么在硬盘上都有一个文件的名字叫做SomePage.aspx,如果不存在这个文件,就会返回一个404 - Page Not Found的错误。 相反,在构建ASP.NET MVC应用程序时,URL和页面就不是一一对应关系了,在ASP.NET MVC应用程序中,一个URL对应一个控制器行为,而不是硬盘上的一个页面文件。 在传统ASP.NET和ASP应用程序中,浏览器请求被映射到页面,在ASP.NET MVC应用程序中,浏览器请求映射到控制器行为,ASP.NET应用程序是以内容为中心,相反,ASP.NET MVC应用程序是以应用逻辑为中心。 理解URL路由 浏览器请求通过ASP.NET MVC的一个叫做URL路由的特性映射到控制器行为,URL路由路由入站请求给控制器行为。 URL路由使用路由表处理入站请求,当你的应用程序第一次启动时创建这个路由表,路由表配置在Global.asax文件中,默认的MVC Global.asax文件内容如清单1所示。 清单1 Global.asax Public Class GlobalApplication Inherits System.Web.HttpApplication Shared Sub RegisterRoutes(ByVal routes As RouteCollection) routes.IgnoreRoute |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |