关于routes.MapageRoutes,URL重写的

public class Global : HttpApplication
{
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码

        RouteConfig.RegisterRoutes(RouteTable.Routes);
        //BundleConfig.RegisterBundles(BundleTable.Bundles);


    }
    private void RegisteRoutes(RouteCollection routes)

    {

        routes.MapPageRoute("", "", "~/Default.aspx");

        routes.MapPageRoute("list", "Items/{action}", "~/Items/list.aspx", false, new RouteValueDictionary { { "action", "all" } });

        routes.MapPageRoute("show", "Show/{action}", "~/show.aspx", false, new RouteValueDictionary { { "action", "all" } });

        routes.MapPageRoute("edit", "Edit/{id}", "~/edit.aspx", false, new RouteValueDictionary { { "id", "1" } }, new RouteValueDictionary { { "id", @"\d+" } });



    }

}


    Global是这样写的,可是我创建show.aspx和edit.aspx时~路由都不变~为什么

第一个匹配的规则起作用,所以你要把你自定义的写在default前面