Asp.Net网络表单:我需要像许多新闻网站一样处理网址的建议。
示例:我看到有些网站发布了一篇关于足球比赛的文章,其网址是这样的:
http://siteAddress/soccer/big-match-Milan-Champions-league
在Intranet场景中(我习惯)我会有一个带有数字ID的表,我的url就是这样的: HTTP:/ipAddress/article.aspx ID = 345
我如何获得这样的网址?
我知道asp.net中的urlrewrite概念。
谢谢!
答案 0 :(得分:0)
ScottGu的文章描述了解决此问题的几种方法:http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx
在我的网站上,我创建了一个HttpModule(就像他的第二和第三种方法)。模块调用数据库以查找与给定URL匹配的文章ID。如果找到了URL,则模块会调用Context.RewritePath
将传入的请求发送到正确的页面。
如果这样做,请确保缓存数据库调用。最好不要为每个传入的请求调用数据库。根据您生成新内容的频率,您可以预先从数据库中获取所有“url to article ID”映射,这样您就不需要任何数据库命中来重写URL。