日韩欧美综合-国产色影院-黄色欧美大片-奶茶视频黄色-无码粉嫩虎白一线天在线观看-亚洲天堂手机在线-亚洲欧美日本在线-日本特级黄色-亚洲tv在线-婷婷激情综合-亚洲精品无-成人免费黄色-亚洲色图久久久-色噜噜狠狠狠综合曰曰曰-精品久久久精品-蜜臀av在线播放-国产美女高潮流白浆视频

asp.net地址映射——偽靜態(tài)

作者:Lgo100 來源:未知 2012-04-22 11:09:15 閱讀 我要評(píng)論 直達(dá)商品

 

  asp.net地址映射 的界說是用戶訪謁 的虛擬地址 映射的現(xiàn)實(shí)文件,虛擬地址可能是靜態(tài)頁面。如理:在訪謁http://fuzhou.naoqiu.com/bus頁面, 其實(shí)訪謁的是/bus.aspx頁面。

  asp.net地址映射是經(jīng)由過程 HttpModule請求事理來完成工作。

  httpModule事理是什么?

  一 個(gè)HTTP請求在HttpModule容器的傳遞過程中,會(huì)在某一時(shí)刻(ResolveRequestCache事務(wù))將這個(gè)HTTP請求傳遞給 HttpHandler容器。在這個(gè)事務(wù)之后,HttpModule容器會(huì)成立一個(gè)HttpHandler的生齒實(shí)例,可是此時(shí)并沒有將HTTP請求節(jié)制 權(quán)交出,而是繼續(xù)觸發(fā)AcquireRequestState事務(wù)以及PreRequestHandlerExcute事務(wù)。在 PreRequestHandlerExcute事務(wù)之后,HttpModule窗口就會(huì)將節(jié)制權(quán)且則交給HttpHandler容器,以便進(jìn)行真正的 HTTP請求措置工作。

  而在HttpHandler容器內(nèi)部會(huì)執(zhí)行ProcessRequest體例來措置HTTP請求。在容器 HttpHandler措置完畢整個(gè)HTTP請求之后,會(huì)將節(jié)制權(quán)交還給HttpModule,HttpModule則會(huì)繼續(xù)對(duì)措置完畢的HTTP請求信 息流進(jìn)行層層的轉(zhuǎn)交動(dòng)作,直到返回到客戶端為止。

  

 

  借用博友圖片

  體味完事理后,我來完成一個(gè) 簡單的地址映射,代碼如下:

  首先先完成地址映射基類:

  ///<summary>

  /// 地址重寫

  /// </summary>

 

  public abstract class BaseModuleRewriter: IHttpModule

  {

  /// <summary>

  /// 初始化挪用

  /// </summary>

 

  /// <param name="app"></param>

  public virtual void Init(HttpApplication app) {

  app.BeginRequest += new EventHandler(app_BeginRequest);

  }

  public virtual void Dispose() { }

  /// <summary>

  /// 請求起頭

  /// </summary>

 

  /// <param name="sender"></param>

  /// <param name="e"></param>

  protected virtual void app_BeginRequest(object sender, EventArgs e)

  {

  HttpApplication app = sender as HttpApplication;

  Rewrite(app);

  }

  /// <summary>

  /// 操作的抽象體例

  /// </summary>

 

  /// <param name="app"></param>

  protected abstract void Rewrite(HttpApplication app);

  }

  擔(dān)任基類,完成需要地址映射操作:

  protected override void Rewrite(HttpApplication app)

  {

  HttpContext context = app.Context;

  HttpRequest request = app.Request;

  string part = Regex.Match(request.Url.ToString(), @"(?<=http://).*").Value.ToLower().Trim('/');

  if (part.IndexOf("/") == -1)

  {

  part = Regex.Match(part, @"^w+").Value;

  switch (part)

  {

  case "bus": context.RewritePath("/bus.aspx"); break;

  case "www":

  case "naoqiu": context.RewritePath("/Default.aspx"); break;

  default: context.RewritePath("/Index_City.aspx"); break;

  }

  }

  }

  那么我們是否還差些什么? 是的,還差個(gè)設(shè)置裝備擺設(shè)文件的設(shè)置裝備擺設(shè)。需要改削web.config文件幾處處所,代碼如:


  推薦閱讀

  詳解網(wǎng)站title寫法

網(wǎng)站title的寫作是做seo優(yōu)化工作中很主要的一步,也是一名seoer的根基功?墒枪P者在實(shí)踐中發(fā)現(xiàn)有良多網(wǎng)站的title其實(shí)寫的都是有問題的,甚置突皓年夜業(yè)多年的seoer都還在犯錯(cuò)誤。本文中,筆者首先列舉網(wǎng)站title寫法>>>詳細(xì)閱讀


本文標(biāo)題:asp.net地址映射——偽靜態(tài)

地址:http://www.sh-jijian.com/a/34/20120422/53492.html

樂購科技部分新聞及文章轉(zhuǎn)載自互聯(lián)網(wǎng),供讀者交流和學(xué)習(xí),若有涉及作者版權(quán)等問題請及時(shí)與我們聯(lián)系,以便更正、刪除或按規(guī)定辦理。感謝所有提供資訊的網(wǎng)站,歡迎各類媒體與樂購科技進(jìn)行文章共享合作。

網(wǎng)友點(diǎn)評(píng)
我的評(píng)論: 人參與評(píng)論
驗(yàn)證碼: 匿名回答
網(wǎng)友評(píng)論(點(diǎn)擊查看更多條評(píng)論)
友情提示: 登錄后發(fā)表評(píng)論,可以直接從評(píng)論中的用戶名進(jìn)入您的個(gè)人空間,讓更多網(wǎng)友認(rèn)識(shí)您。
高安市| 清丰县| 开封市| 肇州县| 岑巩县| 洪泽县| 赤峰市| 梧州市| 巩留县| 奉化市| 胶南市| 四川省| 板桥市| 二连浩特市| 分宜县| 昌吉市| 兴隆县| 伊春市| 诏安县| 南漳县| 宁明县| 德令哈市| 淮北市| 连城县| 商城县| 珠海市| 岐山县| 塔城市| 玛纳斯县| 平顺县| 涞水县| 满城县| 阜平县| 元江| 江孜县| 金昌市| 贺兰县| 贵定县| 仁化县| 嘉祥县| 屏南县|