原先是ViewCourse.ashx?id=1,变成Course1.ashx这样!!想不想
1、在当程序下创建全局的应用程序Global.asax
2、在
protectedvoidApplication_BeginRequest(objectsender, EventArgs e)
写如下代码
protectedvoid Application_BeginRequest(objectsender, EventArgs e)
{
//url重写,1、获取到当前请求的URL ,2、你想要写成Course1.ashx格式(原先是ViewCourse.ashx?id=1)
//3、通过正则表达式匹配到(Course1.ashx格式)。4、然后RewritePath("ViewCourse.ashx?id="+courseid)
string requestUrl = Context.Request.Url.ToString();//获取到当前的url
Match matchCourse = Regex.Match(requestUrl, @"Course(\d+)\.ashx");//.在正则中也有特殊含义,要想表示普通的.就要转义
if (matchCourse.Success)
{
string courseId =matchCourse.Groups[1].Value;//获取到组中的字符串
Context.RewritePath("ViewCourse.ashx?id=" + courseId);//重写URL
}
Match matchSegment = Regex.Match(requestUrl, @"Segment(\d+)\.ashx");//.在正则中也有特殊含义,要想表示普通的.就要转义
if (matchCourse.Success)
{
string segmentId =matchSegment.Groups[1].Value;//获取到组中的字符串
Context.RewritePath("ViewCourse.ashx?id=" + segmentId);//重写URL
}
}