asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

ASP.NET MVC 4框架揭秘:CBuilder(2)[1]


发布日期:2018年01月23日
 
ASP.NET MVC 4框架揭秘:CBuilder(2)[1]

ControllerBuilder(

目前定义了HomeController的两个命名空间具有相同的优先级现在将其中一个定义在当前ControllerBuilder的默认命名空间列表中以提升匹配优先级如下面的代码片段所示在Globalasax 的Application_Start方法中将命名空间ArtechMvcAppControllers添加到当前ControllerBuilder的DefaultNamespaces属性所示的命名空间列表中

public class MvcApplication : SystemWebHttpApplication

{

protected void Application_Start()

{

//其他操作

ControllerBuilderCurrentDefaultNamespaces

Add(ArtechMvcAppControllers

}

}

对于同时匹配注册的路由规则的两个HomeController来说由于ArtechMvcAppControllers命名空间具有更高的匹配优先级所有定义其中的HomeController会被选用这可以通过如图所示的运行结果看出来(S

通过ControllerBuilder提升命名空间匹配优先级

为了检验在路由注册时指定的命名空间和作为当前ControllerBuilder的命名空间哪个具有更高匹配优先级修改定义在App_Start/RouteConfigcs中的路由注册代码如下面的代码片段所示在调用RouteTable的静态属性Routes的MapRoute方法进行路由注册的时候指定了命名空间(ArtechMvcApp

[] []

               

上一篇:ASP.NET MVC 4框架揭秘:CBuilder(2)[2]

下一篇:ASP.NET MVC 4框架揭秘:CBuilder(3)[1]