ASP.NET中Global和URLReWrite用法
本文實例講述了ASP.NET中Global和URLReWrite用法。分享給大家供大家參考。具體如下:
Global.asax:
有時候叫做 ASP.NET 應(yīng)用程序文件,提供了一種在一個中心位置響應(yīng)應(yīng)用程序級或模塊級事件的方法。你可以使用這個文件實現(xiàn)應(yīng)用程序安全性以及其它一些任務(wù)。
重點了解:application_Start; application_BeginRequest; application_Error;
① application_Start:自從服務(wù)器啟動起來,網(wǎng)站第一次被訪問的時候Application_Start執(zhí)行
② Application_Error :程序中發(fā)生未處理異常
③ Session_End:只有進程內(nèi)的Session才會調(diào)用,session_End進程外的Session不會
④ application_BeginRequest:當一個請求過來的時候,便會調(diào)用application_BeginRequest,訪問靜態(tài)頁面時application_BeginRequest不會處理,IIS直接將靜態(tài)頁面文件給了瀏覽器。即使訪問一個不存在的頁面,Application_BeginRequest方法也會被調(diào)用。
URLReWrite:
丑鏈接:http://localhost/viewPerson.aspx?id=1
很丑!處女座不能忍。
帥鏈接:http://localhost/viewPerson-1.aspx
怎么整成帥鏈接那樣的?
利用application_BeginRequest無論訪問什么頁面,除了靜態(tài)頁面,都轉(zhuǎn)向其他程序處理的原理。
使用正則表達式對【丑鏈接】進行匹配,當用戶訪問http://localhost/viewPerson-1.aspx的時候,會觸發(fā)global.asax調(diào)用application_BeginRequest方法,正則表達式匹配成功后,執(zhí)行Context.RewritePath("/ViewPerson.aspx?id=" + id); 搞定,整成【帥鏈接】,就這么簡單。
使用正則表達式:
protected void Application_BeginRequest(object sender, EventArgs e)
{
Match match = Regex.Match(Context.Request.Path, @"^/ViewPerson\-(\d+)\.aspx$");
if (match.Success)
{
string id = match.Groups[1].Value;//拿到(\d+)就是id 的值
Context.RewritePath("/ViewPerson.aspx?id=" + id);
}
}
希望本文所述對大家的asp.net程序設(shè)計有所幫助。
- asp.net 在global中攔截404錯誤的實現(xiàn)方法
- Global.cs中自動獲取未處理的異常
- 在Global.asax文件里實現(xiàn)通用防SQL注入漏洞程序(適應(yīng)于post/get請求)
- Global.asax取絕對路徑的方法
- Global.asax取物理路徑/取絕對路徑具體方法
- Global.asax的Application_BeginRequest實現(xiàn)url重寫無后綴的代碼
- Global.asax的Application_Error實現(xiàn)錯誤記錄/錯誤日志的代碼
- c#定時器和global實現(xiàn)自動job示例
- ASP.net全局程序文件Global.asax用法分析
- 在C#中g(shù)lobal關(guān)鍵字的作用及其用法
相關(guān)文章
ASP.NET中利用WebClient上傳圖片到遠程服務(wù)的方法
這篇文章主要介紹了ASP.NET中利用WebClient上傳圖片到遠程服務(wù)的方法,包括客戶端和服務(wù)端,代碼附有注釋,需要的的朋友參考下吧2017-01-01
ASP.NET中RadioButtonList綁定后臺數(shù)據(jù)后觸發(fā)點擊事件
這篇文章主要介紹了ASP.NET中RadioButtonList綁定后臺數(shù)據(jù)后觸發(fā)點擊事件的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-05-05
asp.net MVC 根據(jù)菜單樹類別不同動態(tài)加載視圖的實現(xiàn)步驟
這篇文章主要介紹了asp.net MVC 根據(jù)菜單樹類別不同動態(tài)加載視圖的實現(xiàn)步驟,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2024-08-08
Asp.net之TextBox只允許輸入數(shù)字的方法總結(jié)
Asp.net之TextBox只允許輸入數(shù)字的方法總結(jié),需要的朋友可以參考一下2013-02-02

