System.Web.Routing命名空间代码解析(一)2012-01-22 博客园 Andrew YinRouteBase类,RouteData类,RouteValueDictionary类1.RouteBase是一个抽象基类,定义了两个功能:1.从HttpContextBase中根据Route Map规则得到RouteData2.得到虚拟路径数据(将在 Route 类(下) 中讲解)
using System.Security.Permissions;using System.Web;  namespace System.Web.Routing{  [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal),   AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]  public abstract class RouteBase  {    // Methods      public abstract RouteData GetRouteData(HttpContextBase httpContext);    public abstract VirtualPathData GetVirtualPath(RequestContext requestContext, RouteValueDictionary values);  }}2. RouteData类,保存Route数据的类,提供如下功能1.可保存对Route和RouteHandler的引用(基类和接口)2.保存两个键值对,分别存储RouteValues 和用户自传入的DataToken