创建及使用Routing类,注意,该类只能在全局处理程序的 Application_Start(object sender, EventArgs e) 方法中使用才是有意义的:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.Add(new Route
(
"Category/{action}/{categoryName}"
, new CategoryRouteHandler()
));
}
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.Add(new Route
(
"Category/{action}/{categoryName}"
, new CategoryRouteHandler()
));
}
需要注意的是,Route 的构造函数 (String, IRouteHandler)中,IRouteHandler是一个接口,不能直接实例化,但可以创建新的类来实现它的 GetHttpHandler 方法
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
return new MyPage(requestContext);
}
{
return new MyPage(requestContext);
}
RequestContext是客户请求的上下文,直接由URL来提供。(基于.Net 3.5 SP1)