0

我使用 ASP.Net URL Routing 进行 SEO,当我遇到一个错误的路由名称(即 /Games/{RouteName})时,我想将它传递给我的 404 页面进行处理。我检查数据库以确保 {RouteName} 是游戏的有效名称。如果 RouteName 是有效的,我想继续正常处理,但是如果数据库返回并且没有找到对应的 RouteName,我想知道服务器如何表现得好像输入了一个真正错误的 URL。我怎样才能最好地做到这一点?

4

2 回答 2

0

我建议在您的逻辑中抛出一个 404 错误,以确定它是无效的,例如

if (!<validRouteName>) {
   return new HttpStatusCodeResult(404, "Game not found.");
}
于 2012-09-12T03:40:51.313 回答
0

在 IIS 中做一些乱七八糟的事情我已经弄清楚了。正如 endyourif 建议的那样,我需要在后面的代码中抛出 404 响应,这是由 Response.StatusCode = 404; 完成的。我还必须为 404 配置 IIS 的错误页面以指向我的 404.aspx 页面。

于 2012-09-13T00:18:05.443 回答