ASP.NET MVC - 入门 (概述、目录结构、约定由于配置)
关键字:概述、目录结构、约定由于配置
- 理解ASP.NET MVC
- ASP.NET MVC 概述
- ASP.NET MVC 应用程序的创建方法
- ASP.NET MVC 应用程序的结构
MVC在Web框架中的应用
- 模型:描述程序设计人员感兴趣问题域的一些类,这些类通常封装存储在数据库中的数据,以及操作这些数据和执行特定域业务逻辑的代码。在ASP.NET MVC中,模型就像是一个使用了某种工具的数据访问层(Data Access Layer),这种工具包括实体框架(Entity Framework)或者与包含特定域逻辑的自定义代码组合在一起的NHibernate。
- 视图:一个动态生成HTML页面的模版。
- 控制器:一个协调视图与模型之间关系的特殊类。它响应用户输入,与模型进行对话,并决定呈现哪个视图。在ASP.NET MVC中,这个类通常以后缀名Controller表示。
创建ASP.NET MVC应用程序
应用程序模版

- Internet Application模版:该模版包含ASP.NET MVC Web应用程序的启动方式,程序创建之后便可以立即运行,并能看到一些页面,这可以在短短一分钟内完成;除此之外,还包含一些针对ASP.NET Membership系统的基本账户管理功能。
- Intranet Application模版:该模版与Internet Application模版相似,但是它的账户管理功能不是针对ASP.NET Membership系统而是针对Windows账户。
- Basic模版:该模版非常小,其中除了包含基本的文件夹、CSS和MVC应用程序基础结构以外,别无其他。
- Empty模版:该模版很空,比Basic模版内容还要少,只有必须的程序集和基本的目录结构,仅此而已。
- Moblie Application模版:Mobile Application模版使用jQuery Mobile进行预配置,这样就启动创建一个只能仅移动访问的网站。该模版中包括移动视觉主题、触摸优化的UI,还支持Ajax导航。
- Web API模版:ASP.NET Web API是一个创建HTTP服务的框架。Web API模版和Internet Application模版相似,但是它简化为Web API开发。
ASP.NET MVC应用程序的结构

- /Controllers 用于保存那些处理URL请求的Controller类。
- /Models 用于保存那些表示和操纵数据以及业务对象的类。
- /Views 用于保存那些负责呈现输出结果的UI模版文件(如HTML)。
- /Scripts 用于保存JavaScript库文件和脚本(.js)。
- /Images 用于保存站点使用的图像。
- /Content 用于保存CSS和其他站点内容,而非脚本和图像。
- /Filters 用于保存过滤器代码。
- /App_Data 用于存储想要读取/写入的数据文件
- /App_Start 用于保存一些功能的配置代码,如路由、捆绑和Web API。
ASP.NET MVC和约定
默认情况下,ASP.NET MVC应用程序对约定的依赖性很强。例如,当街写视图模版时,ASP.NET MVC采用一种基于约定的目录命名结构,这个约定可以实现当从Controller类中引用视图引擎时,省略位置路径信息。默认情况下,ASP.NET MVC会在应用程序下的\vIEWS\[ControllerName]\目录中查找试图模版文件。
设计ASP.NET MVC是围绕一些基于约定的默认项,这些默认项在需要的时候可以被覆盖。这个概念通常称为“约定由于配置”。
ASP.NET MVC预期的约定:
- 每个Controller类的名字以Controller结尾,这些类在Controllers目录中。
- 应用程序的所有视图放在一个单独的Views目录下。
- 控制器使用的视图是在Views主目录的一个子目录中,这个子目录是根据控制器名称(后面减去Controller的后缀)来命名的。例如ProductController使用的视图就放在/Views/Product目录中。
摘录自:[美]Jon Galloway,Phil Haack,Brad Wilson等著,孙远帅,邹权译 ASP.NET MVC 4高级编程(第4版) [Professional ASP.NET MVC 4] [M]、清华大学出版社,2013、1-27、

浙公网安备 33010602011771号