如果我没记错的话,您的问题是您需要请求像 www.test.com/1234 这样的 URL,而不是 www.test.com/test/1234。
这可以使用您在 global.asax 文件中提到的路线来完成。但这里的问题是您在定义路线时直接使用了单个动态参数 {Name}。如果您想使用单个参数定义任何其他路由,则它将无法按如下所述工作:
RouteTable.Routes.MapPageRoute("StoreRoute","{Name}","~/Webpages/Test/Demo.aspx");
RouteTable.Routes.MapPageRoute("StoreRoute1","{Name1}","~/Webpages/Test/Demo1.aspx");
在上述情况下,第二个路由将被声明的第一个路由覆盖。
这就是原因,最好在路由声明中给出一个静态参数。
RouteTable.Routes.MapPageRoute("StoreRoute","test/{Name}","~/Webpages/Test/Demo.aspx");
RouteTable.Routes.MapPageRoute("StoreRoute1","test1/{Name1}","~/Webpages/Test/Demo1.aspx");
在后一种情况下,不会覆盖第二条路由。
现在,如果你只需要定义一个路由,那么你的代码就可以工作了。
您可以在下面的链接中查看我关于 URL 路由的博客系列。这个链接是我重新发布的帖子。
http://karmic-development.blogspot.in/2013/10/url-routing-in-aspnet-web-forms-same.html
谢谢和问候, Munjal