知识大全 ASP.NET MVC 4框架揭秘:CBuilder(2)[2]
Posted 空间
篇首语:要须心地收汗马,孔孟行世目杲杲。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET MVC 4框架揭秘:CBuilder(2)[2]相关的知识,希望对你有一定的参考价值。
ASP.NET MVC 4框架揭秘:CBuilder(2)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
public class RouteConfig
public static void RegisterRoutes(RouteCollection routes)
//其他操作
routes MapRoute(
name: Default
url: controller/action/id
defaults: new controller = Home action = Index
id = UrlParameter Optional
namespaces: new string[] Artech MvcApp
)
再次运行我们的程序会在浏览器中得到如图 所示的结果 从中可以看出定义在命名空间 Artech MvcApp 中的HomeController被最终选用 可见较之作为当前ControllerBuilder的默认命名空间 在路由注册过程中执行的命名空间具有更高的匹配优先级 前者可以视为后者的一种后备 (S )
图 在路由注册时指定的命名空
间具有更高的匹配优先级
在路由注册时指定的命名空间比当前ControllerBuilder的默认命名空间具有更高的匹配优先级 但是对于这两个集合中的所有命名空间却具有相同的匹配优先级 换句话说 用于辅助解析Controller类型的命名空间分为三个梯队 分别简称为路由命名空间 ConrollerBuilder命名空间和Controller类型命名空间 如果前一个梯队不能正确解析出目标Controller的类型 则后一个梯队的命名空间将作为后备 反之 如果根据某个梯队的命名空间进行解析得到多个匹配的Controller类型 会直接抛出异常
针对Area的路由对象的命名空间
针对某个Area的路由映射是通过相应的AreaRegistration进行注册的 具体来说是在AreaRegistration的RegisterArea方法中调用AreaRegistrationContext对象的MapRoute方法进行注册的 如果在调用MapRoute方法中指定了表示命名空间的字符串 它将自动作为注册的路由对象的命名空间 否则会将AreaRegistration的命名空间加上 * 后缀得到的字符串作为路由对象的命名空间
这里所说的 路由对象的命名空间 存在于Route对象的DataTokens属性表示的RouteValueDictionary对象中 对应的Key为 Namespaces Value就是一个包含字符串数组的命名空间列表 通过第 章 URL路由 的介绍 Route对象的DataTokens属性包含的变量会转移到由它生成的RouteData的同名属性中
除此之外 在调用AreaRegistrationContext的MapRoute方法时还会在注册Route对象的DataTokens属性中添加一个Key为 UseNamespaceFallback 的条目 它表示是否采用后备命名空间对Controller类型进行解析 如果注册的路由对象具有命名空间(调用MapRoute方法时指定了命名空间或者对应的AreaRegistration类型定义在某个命名空间下) 该条目的值为False 否则为True 该条目同样反映在通过该Route对象生成的RouteData对象的DataTokens属性中
返回目录 ASP NET MVC 框架揭秘
编辑推荐
ASP NET开发培训视频教程
Microsoft NET框架程序设计视频教程
Java程序性能优化 让你的Java程序更快 更稳定
Visual C++音频/视频技术开发与实战
cha138/Article/program/net/201311/16092相关参考
ASP.NETMVC4框架揭秘:总体设计 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 第章&n
知识大全 ASP.NET MVC 4框架揭秘:ControllerFactory[2]
ASP.NETMVC4框架揭秘:ControllerFactory[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们
知识大全 ASP.NET MVC 4框架揭秘:ControllerFactory[1]
ASP.NETMVC4框架揭秘:ControllerFactory[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们
知识大全 ASP.NET MVC 4框架揭秘:Controller(1)
ASP.NETMVC4框架揭秘:Controller(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
知识大全 ASP.NET MVC 4框架揭秘:Controller(3)
ASP.NETMVC4框架揭秘:Controller(3) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
知识大全 ASP.NET MVC 4框架揭秘:Controller(2)[2]
ASP.NETMVC4框架揭秘:Controller(2)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起
知识大全 ASP.NET MVC 4框架揭秘:Controller(2)[1]
ASP.NETMVC4框架揭秘:Controller(2)[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起
知识大全 ASP.NET MVC 4框架揭秘:CBuilder(1)[1]
ASP.NETMVC4框架揭秘:CBuilder(1)[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
知识大全 ASP.NET MVC 4框架揭秘:CBuilder(1)[2]
ASP.NETMVC4框架揭秘:CBuilder(1)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看