我在asp.net中使用自定义路由
我创建了动态页面网址,如
1) www.xxxxxx.com/post/Home.aspx
2) www.xxxxxx.com/post/aboutus.aspx
3) www.xxxxxx.com/post/profile.aspx
1)URL~ / form / Home.aspx是物理存在的 但2)和3)URL服务器中不存在物理
所以我的问题是如何检查“路由器”物理存在和动态页面在URL
如果~/form/Home.aspx
是实体存在,那么请使用此~/post/Home.aspx
页面但不存在.aspx
页面物理,然后使用~/post/common.aspx
protected void Application_Start(object sender, EventArgs e)
{
System.Web.Routing.RouteTable.Routes.MapPageRoute("Route1", "post/{pagename}.aspx", "~/form/{pagename}.aspx");
System.Web.Routing.RouteTable.Routes.MapPageRoute("Route2", "post/{pagename}.aspx", "~/form/common.aspx");
}
Plz帮帮我
答案 0 :(得分:1)
我认为您的路由错误。
System.Web.Routing.RouteTable.Routes.MapPageRoute("Route1", "post/Home.aspx", "~/form/Home.aspx"); // <- the difference is here
System.Web.Routing.RouteTable.Routes.MapPageRoute("Route2", "post/{pagename}.aspx", "~/form/common.aspx");
此路由表将导致Home.aspx直接转到〜/ form / Home.aspx,但所有其他请求将转到common.aspx。
Shimshon