View Code
1 protected void Application_BeginRequest(object sender, EventArgs e) 2 { 3 string url = HttpContext.Current.Request.Url.AbsolutePath; 4 string mainPath = @"^/[a-zA-Z]+$"; 5 string secondPath = @"^/[a-zA-Z]+_[a-zA-Z]+_\d+\.html$"; 6 string threePath = @"^/[a-zA-Z]+_[a-zA-Z]+_\d+_[a-zA-Z]+_\d+\.html$"; 7 if (Regex.IsMatch(url, mainPath)) 8 { 9 HttpContext.Current.RewritePath(url + ".aspx"); 10 } 11 else if (Regex.IsMatch(url, secondPath)) 12 { 13 HttpContext.Current.RewritePath(url.Split('_')[0] + ".aspx?" + url.Split('_')[1] + "=" + url.Split('_')[2].Split('.')[0]); 14 } 15 else if (Regex.IsMatch(url, threePath)) 16 { 17 HttpContext.Current.RewritePath(url.Split('_')[0] + ".aspx?" + url.Split('_')[1] + "=" + url.Split('_')[2] + "&&" + url.Split('_')[3] + "=" + url.Split('_')[4].Split('.')[0]); 18 } 19 else 20 { 21 //Context.Response.Write("url:" + url + "<br/>main:" + Regex.IsMatch(url, mainPath) + "<br/>second:" + Regex.IsMatch(url, secondPath) + "<br/>three:" + Regex.IsMatch(url, threePath)); 22 } 23 }