C# MapPageRoute()与站点';的根目录重复加载目标资源
我在C# MapPageRoute()与站点';的根目录重复加载目标资源,c#,asp.net,routes,global-asax,C#,Asp.net,Routes,Global Asax,我在Global.asax.cs中有以下行: routes.MapPageRoute( "Resorts", "{resortname}", "~/Pages/ViewResort.aspx" ); 其目的是允许以下请求: www.mysite.com/some-resort-name 加载此资源(或多或少) 这种行为很有效。但是,我注意到每次请求任何资源时都会加载ViewResort.aspx,这可能是因为我的路由不包含文本路径段,如下面的备选方案: routes.MapPageRoute
Global.asax.cs
中有以下行:
routes.MapPageRoute( "Resorts", "{resortname}", "~/Pages/ViewResort.aspx" );
其目的是允许以下请求:
www.mysite.com/some-resort-name
加载此资源(或多或少)
这种行为很有效。但是,我注意到每次请求任何资源时都会加载ViewResort.aspx
,这可能是因为我的路由不包含文本路径段,如下面的备选方案:
routes.MapPageRoute( "Resorts", "Resort/{resortname}", "~/Pages/ViewResort.aspx" );
我的客户坚持URL中主机名之后的唯一内容是度假村名称,因此不可能使用备用路线
所以我的问题是:当
RouteUrl
引用站点的根目录时,是否需要对它做一些特殊的处理?如果失败,是否有一个特定的模式可以在目标页面上实现(在本例中为ViewResort.aspx
),以防止在每个页面请求中加载和丢弃它?您的路线是一个包罗万象的路线。在这种情况下,您需要在全面覆盖路由之前提供特定路由,以便为这些特定路由提供正确的响应。换句话说,只有那些必须重定向到Pages/ViewResort.aspx的路由才能到达您的“一网打尽”服务
routes.MapPageRoute( "Resorts", "Resort/{resortname}", "~/Pages/ViewResort.aspx" );