效果:

注意:
当我们使用参数映射的时候,在获取参数值使用的是 <code>Page.RouteData.Values</code>,而不是 <code>Request.QueryString</code>,有一种情况是,如果你的 Url 映射还是 WebForm1.aspx 文件名的形式,只不过这个文件地址发生了变化,这时候你就不需要在 MapPageRoute 中进行参数配置了,只需要进行 Url 和 WebForm 文件地址配置,那这样配置,使用 <code>Request.QueryString</code> 可以获取到参数值吗?我试过是可以的,没有了参数映射配置,也就不需要 <code>Page.RouteData.Values</code> 进行获取参数值了,一种偷巧行为。
多个参数的映射还有一种写法是:<code>test/{para1}&{para2}</code>,但我试过这种写法会报错,而在 Scott Guthrie 的一篇博文中评论回复,这种方式是可以的,如下:
在 MapPageRoute Url 映射的时候,使用的后缀是 .html,需要在 web.config 添加上面配置,如果使用的是 .aspx,则不需要,runAllManagedModulesForAllRequests 在之前的博文中有说过,就不重复了。
本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/web-forms-MapPageRoute.html,如需转载请自行联系原作者