MVC有关的核心命名空间

MVC有关的核心命名空间主要有以下几个

1) System.Web.Routing

URL路由在该命名空间下提供了使用URL路由功能的类,它可以将一个URL路由映射对应到Controller上,而不是映射到一个物理文件。

2) System.Web.Extensions

这是ASP.NET Ajax的命名空间,在MVC中使用Ajax功能时需要引用。

3) System.Web.Mvc

这是ASP.NET MVC最主要的命名空间。该命名空间包含一些类和接口,它们支持用于创建Web应用程序的ASP.NET MVC框架。该命名空间包含表示控制器、控制器工厂、操作结果、视图、分部视图以及模型编译等的类。

4) System.Web.Abstractions

该命名空间包含一些相关的基类,例如HttpContextBase和HttpRequestBase等。

5) System.Web.DynamicData

该命名空间包含为 ASP.NET 动态数据提供核心功能的类。另外,它还提供允许自定义动态数据行为的扩展性功能。

创建ASP.NET MVC Web应用程序项目时,MVC组件会按项目文件夹自动分开,如图1-4所示。

 

 
图1-4  MVC应用程序目录结构

默认情况下,MVC应用程序目录结构包括以下文件夹。

引用  包含项目运行所需的命名空间与程序集,在上一节中介绍过。

App_Data  这是数据的物理存储区。此文件夹的作用与它在使用WebForm页面的ASP.NET网站中的作用相同。

Content  建议在此位置添加内容文件,如级联样式表文件、图像等。通常,Content文件夹用于存储静态文件。

Controllers  建议在此位置存储控制器。MVC 框架要求所有控制器的名称均以Controller结尾,如HomeController、LoginController或ProductController。

Models  这是为表示 MVC Web应用程序的应用程序模型的类提供的文件夹。此文件夹通常包括定义对象以及定义与数据存储交互所用的逻辑的代码。通常,实际模型对象将位于单独的类库中。但是在创建新应用程序时,可以将类放在此处,然后在开发周期中稍后的某个时刻将其移动到单独的类库中。

Scripts  建议在此位置存储支持应用程序的脚本文件。默认情况下,此文件夹包含 ASP.NET Ajax 基础文件和 jQuery 库。

Views  建议在此位置存储视图。视图使用ViewPage(.aspx)、ViewUserControl(.ascx) 和ViewMasterPage(.master) 文件,以及与呈现视图相关的任何其他文件。在Views文件夹中,每个控制器都具有一个文件夹,该文件夹以控制器名称前缀命名。例如,如果控制器名为HomeController,则Views文件夹包含名为Home的子文件夹。

默认情况下,当ASP.NET MVC框架加载视图时,它将在"Views\控制器名称"文件夹中寻找具有请求的视图名称的ViewPage (.aspx)文件。默认情况下,Views文件夹中也有一个名为Shared的子文件夹,但该文件夹不与任何控制器对应。

Shared文件夹用于存储在多个控制器之间共享的视图。例如,我们可以将Web应用程序的母版页放在Shared文件夹中。

 

除了使用前面列出的文件夹之外,ASP.NET MVC Web应用程序还使用Global.asax文件中的代码来设置全局URL路由默认值,并且使用Web.config文件来配置应用程序。

路由在Global.asax文件的Application_Start方法中初始化

默认的路由表中包含一个路由,该默认路由将所有进入的请求拆分为3个单元(URL 单元是正斜杠之间的所有内容)。第一个单元映射到控制器名称,第二个单元映射到操作名称,最后一个单元映射到传递给操作名称 ID 的参数。

 

例如,考虑下面的URL:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值