这个是我们一般的注册路由流程,由此可以知道我们需要一个Route对象,而Route继承于RouteBase
再来看看RouteBase
我们可以看出最重要的方法就是GetRouteData方法,我们在来看看RouteData
总结:
Web.Routing的总流程
1.注册HttpModule 到配置文件
2.注册OnApplicationPostResolveRequestCache事件
3.从全局路由表中获取RouteData
4.获取RouteData的IRouteHandler
5.获取IRouteHandler中的IHttpHandler
6.执行IHttpHandler
路由匹配规则:
1.将虚拟路径与路由的默认值相匹配
2.如果url的段数小于我们规定的段数就失败
3.如果添加了(*catchAll) 那么除了规定的段之外其他的都绑定到catchAll这个key上面