0

我在页脚中有一些链接MasterPage主页、关于、条款、联系方式等。条款链接有navigateUrl:和"~/en-us/Terms"联系链接"~/en-us/Community/Contact"。在global.asax,我的路由表如下:

routes.MapPageRoute("", "en-us/Terms", "~/EN_US/Terms.aspx");
routes.MapPageRoute("", "en-us/Community/Contact", "~/EN_US/Community/Contact.aspx");

我的问题是:我还没有在我的解决方案中添加Community/Contact.aspx,所以当我点击Contact链接时,我预计会收到The resource cannot be found错误,但它会重定向到Terms页面。更糟糕的是,每个不存在的地址也会这样做。例如,当我尝试"localhost:1384/en-us/someWords/anotherWords"(完全相同)时,它会重定向到条款页面。
我删除 cookie、删除浏览器历史记录、删除 ASPTemplate 文件、关闭 VS、重新启动 Windows、清除解决方案、重建它以及其他任何事情。问题仍然存在
,我使用的是 VS.2012,asp.net 4。

单击链接后Contact,在浏览器地址栏中,我看到localhost:1384/en-us/Community/Contact了,但页面内容与术语页面完全相同,我不知道为什么。

4

1 回答 1

1

因为您没有给出路线名称,所以第一个成为默认路线。因此默认为条款。

于 2013-08-05T16:02:35.717 回答