服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - ASP.NET教程 - Global.asax的Application_BeginRequest实现url重写无后缀的代码

Global.asax的Application_BeginRequest实现url重写无后缀的代码

2019-11-16 12:06asp.net教程网 ASP.NET教程

本文为大家详细介绍下利用Global.asax的Application_BeginRequest 实现url重写其无后缀,具体核心代码如下,有需求的朋友可以参考下,希望对大家有所帮助

利用Global.asax的Application_BeginRequest 实现url 重写 无后缀 

复制代码代码如下:


<%@ Application Language="C#" %> 

<script RunAt="server"> 
void Application_BeginRequest(object sender, EventArgs e) 

string oldUrl = System.Web.HttpContext.Current.Request.RawUrl; //获取初始url 

//~/123.aspx → ~/Index.aspx?id=123 
Regex reg = new Regex(@"^\/\d+\.html"); 
if (reg.IsMatch(oldUrl)) 

string id = reg.Match(oldUrl).ToString().Substring(1, reg.Match(oldUrl).ToString().LastIndexOf(".") - 1); 
Context.RewritePath("~/Index.aspx?id=" + id); 


//~/123 → ~/Index.aspx?id=123 
Regex reg1 = new Regex(@"^\/\d+$"); 
if (reg1.IsMatch(oldUrl)) 

string id = reg1.Match(oldUrl).ToString().Substring(1); 
Context.RewritePath("~/Index.aspx?id=" + id); 


//~/index/123 → ~/Index.aspx?id=123 
Regex reg3 = new Regex(@"^\/index\/\d+$"); 
if (reg3.IsMatch(oldUrl)) 

string id = reg3.Match(oldUrl).ToString().Substring(7); 
Context.RewritePath("~/Index.aspx?id=" + id); 



</script> 

延伸 · 阅读

精彩推荐