您的位置:首页 > 其它

在Global.asax中实现URL 的重写.

2011-03-22 14:34 337 查看
protected void Application_BeginRequest(object sender, EventArgs e)
{
string url = Request.RawUrl.ToString();
if (url.ToLower().IndexOf("page/bloglist/") > -1 && url.IndexOf("?") < 0)
{
int lastg = url.LastIndexOf("/");
int lastdot = url.LastIndexOf(".aspx");
string nurl = String.Format("{0}/blog.aspx?sid={1}", url.Substring(0, lastg), url.Substring(lastg + 1, lastdot - lastg - 1));
HttpContext.Current.RewritePath(nurl);
}

}


刚开始这段代码的意思是当请求到类似如:page/bloglist/123456789.aspx 的页面的时候,将其自动转向页面:

blog.aspx?sid=123456789 的页面.当然page/bloglist/123456789.aspx 这个页面 是实际不存在的,这也就是为什么 大家称这种方法是伪静态的原因了.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: