0

我有以下行Global.asax.cs

routes.MapPageRoute( "Resorts", "{resortname}", "~/Pages/ViewResort.aspx" );

目的是允许这样的请求:

www.mysite.com/some-resort-name

加载此资源(或多或少)

www.mysite.com/Pages/ViewResort.aspx?resortname=some-resort-name

这种行为很好。但是,我注意到每次ViewResort.aspx请求任何资源时都会加载它,大概是因为我的路线不包含文字路径段,就像这个替代方案一样:

routes.MapPageRoute( "Resorts", "Resort/{resortname}", "~/Pages/ViewResort.aspx" );

我的客户坚持认为 URL 中主机名之后的唯一内容是度假村名称,因此不可能使用备用路线。

RouteUrl所以我的问题是:当它引用站点的根目录时,是否需要做一些特别的事情?如果做不到这一点,是否可以在目标页面(ViewResort.aspx在这种情况下)上实现特定的模式,以防止它在每个页面请求中被加载和丢弃?

4

1 回答 1

1

你的路线是一个包罗万象的路线。在这种情况下,您需要在包罗万象的路线之前提供特定路线,以便为这些特定路线提供正确的响应。换句话说,唯一应该通过您的包罗万象的路由是必须重定向到 Pages/ViewResort.aspx 的路由。

于 2012-11-10T04:15:58.087 回答