0

Asp.Net Web Forms:我需要一个关于处理 url 的建议,就像许多新闻网站一样。

示例:我看到某个网站发布了一篇关于足球比赛的文章,其 url 是这样的:

 http://siteAddress/soccer/big-match-Milan-Champions-league

在 Intranet 场景(我习惯于)中,我会有一个带有数字 id 的表,而我的 url 应该是这样的:http://ipAddress/article.aspx?id=345

我怎样才能获得这样的网址?

我知道 asp.net 中的 urlrewrite 概念。

谢谢!

4

1 回答 1

0

ScottGu 的文章描述了解决这个问题的几种方法:http ://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

在我的网站上,我创建了一个 HttpModule(就像他的第 2 和第 3 方法一样)。该模块调用数据库来查找与给定 URL 匹配的文章 ID。如果找到 URL,则模块调用Context.RewritePath以将传入请求发送到正确的页面。

如果这样做,请确保缓存数据库调用。最好不要为每个传入请求调用数据库。根据生成新内容的频率,您可以从数据库中预取所有“url 到文章 ID”的映射,这样就不需要任何数据库命中来重写 URL。

于 2013-09-19T18:03:55.520 回答