前进中的蜗牛

番茄大叔

水滴穿石,非一日之功;没有量变,何来质变。

ASP.NET Route

Route理解

路由,就字面意思到某个地方的指向地址,在程序中就指程序需要运行的类和方法。在Asp.net Webform中每个请求(URL)都指向某个具体的物理文件,这样限制了URL的灵活性、可读性和SEO优化。
Route的作用主要有:

  1. 根据URL提取RouteDataRouteData包含指向具体的执行方法的值(如ControllerNameActionName)和处理的IHandler
  2. 根据给定的Route得到虚拟路径

Route知识图谱

  1. Route介绍
    • Url每个Route有一个url模板
    • GetRouteData()根据HttpContext提取RouteData
    • GetVirtualPath()根据RouteData返回Url
    • Constraints为Url模板匹配规则
    • Dafault为RouteData指定默认值
  2. RouteData
    • Values为字典类型,从HttpContext提取的数据
    • DataToken字典类型
  3. RouteCollection注册路由
    • GetRouteData()和GetVirtualPath()变量每个Route执行
    • WebForm中MapPageRoute()将物理路径程序注册Route,MVC中MapRoute()
    • RoutExistingFiles是否允许访问物理路径文件
    • Ignore 忽略的路由
  4. IHandler
    • WebForm 中PageRouteHandler
    • MVC中 MVCRouteHandler
  5. Area区域注册,能将controller分类
    • 主要Area对应namespace查找controller
posted @ 2018-08-14 16:46  LoveTomato  阅读(856)  评论(0编辑  收藏  举报