Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MapPageRoute()与站点';的根目录重复加载目标资源_C#_Asp.net_Routes_Global Asax - Fatal编程技术网

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" );