成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET應(yīng)用程序的web.config文件

開(kāi)發(fā) 后端
本文介紹ASP.NET應(yīng)用程序的web.config文件,以及介紹了在ASP.NET中 如何建立aspx到DLL的映射,如何開(kāi)發(fā)一個(gè)可以處理HTTP請(qǐng)求/響應(yīng)的DLL。

ASP.NET不是asp的簡(jiǎn)單升級(jí),而是微軟。Net計(jì)劃中的一個(gè)重要組成部分,它依托。Net的多語(yǔ)言與強(qiáng)大的類(lèi)庫(kù)支持,引進(jìn)了服務(wù)端 HTML控件與WEB控件,自動(dòng)處理控件的客戶端與服務(wù)端的 交互,為開(kāi)發(fā)人員提供了類(lèi)似Windows下窗口編程的界面,為開(kāi)發(fā)大型網(wǎng)絡(luò)應(yīng)用程序功能提 供了良好的編程接口,也能夠極大地提高開(kāi)發(fā)人員的工作效率。

然而,"一次轉(zhuǎn)換,兩次編譯"過(guò)程使得aspx文件在***執(zhí)行(或更新后***運(yùn)行)時(shí)顯得略有不足,特別是在擁有大量aspx及codebehind的代碼文件的應(yīng)用環(huán)境中,把a(bǔ)spx文件編譯成DLL(在。Net中,被稱(chēng)為應(yīng)用程序集)后再發(fā)布,省去"一次轉(zhuǎn)換、一次編譯"的時(shí)間及CPU占用率,對(duì)提高WEB服務(wù)的整體性能會(huì)有較大的提升。當(dāng)然,編譯成DLL后,對(duì)源代碼的保密性也有一定程度的提高。

本文通過(guò)對(duì)ASP.NET的基本處理流程及一個(gè)偶然發(fā)現(xiàn)的秘密的分析,介紹了在ASP.NET中 如何建立aspx到DLL的映射,如何開(kāi)發(fā)一個(gè)可以處理HTTP請(qǐng)求/響應(yīng)的DLL,以及如何設(shè)置"陷阱",把現(xiàn)成的單個(gè)aspx文件與 codebehind的aspx文件編譯成DLL的過(guò)程,文章***,還介紹了一個(gè)在實(shí)際操作過(guò)程的小技巧。

由于本文要涉及ASP.NET應(yīng)用程序,web.config文件等,為了使讀者能更好地理解本文內(nèi)容,也為了使本文看上去不顯累贅,先就本文相對(duì)應(yīng)的系統(tǒng)環(huán)境作一介紹:

系統(tǒng)環(huán)境:Win2000(SP3)+ IIS5 + .Net Framework 1.0(中文版)。

服務(wù)器名稱(chēng):由于本文的例子均在本機(jī)上測(cè)試,服務(wù)器名稱(chēng)為localhost.

IIS設(shè)置:建立虛擬目錄dlltest(真實(shí)路徑為w:\wwwroot\dlltest),并把它設(shè)為應(yīng)用程序,在dlltest下建立bin目錄。所有源文件將放在dlltest目錄下,而所有dll文件將放在dlltest\bin目錄下。

ASP.NET應(yīng)用程序配置文件——web.config在dlltest目錄下建立一個(gè)web.config文件,初始時(shí)該文件內(nèi)容如下:

  1. <?xml version="1.0"?> 
  2. <configuration> 
  3. <system.web /> 
  4. </configuration> 
  5.  

命令窗口(DOS窗口)

打開(kāi)命令窗口,并用cd命令使當(dāng)前目錄為w:\wwwroot\dlltest.

建立aspx到dll的映射

首先讓我們來(lái)看看一般情況下aspx文件是如何被ASP.NET處理的:

當(dāng)一個(gè)HTTP請(qǐng)求(例如"http://webserver/webapp/webpage.aspx") 從客戶端發(fā)送到IIS服務(wù)器時(shí),IIS捕獲并分析這個(gè)請(qǐng)求,
◆當(dāng)它分析到這個(gè)請(qǐng)求是一個(gè)aspx頁(yè)面時(shí),立即以 "/webapp/webpage.aspx"為參數(shù)調(diào)用ASP.NET運(yùn)行環(huán)境(aspnet_wp.exe),
◆ASP.NET環(huán)境啟動(dòng)后,檢查 "/webapp/webpage.aspx"是否存在,若不存在,則向客戶端返回HTTP 404(File not found)錯(cuò)誤,
◆否則在 ASP.NET 的臨時(shí)目錄中查找相應(yīng)的dll文件,若不存在或者該dll比aspx源文件"舊",則調(diào)用csc編譯器(若aspx的服務(wù)端腳本語(yǔ)言是 VB或JScript,則調(diào)用相應(yīng)的vbc編譯器, jsc編譯器)把a(bǔ)spx文件編譯成dll,
◆然后ASP.NET再調(diào)用該dll來(lái)處理具體的客戶請(qǐng) 求,返回服務(wù)器響應(yīng)。

從這個(gè)處理流程可以看出,一般情況下,ASP.NET運(yùn)行環(huán)境會(huì)自動(dòng)識(shí)別、檢查、更新與aspx相對(duì)應(yīng)的 dll.那么有沒(méi)有其它辦法可以強(qiáng)制把對(duì)一個(gè)aspx文件的處理"路由"到一個(gè)已編譯存在的DLL呢?方法就是在ASP.NET應(yīng)用程序配置文件 web.config的system.web節(jié)的httpHandlers節(jié)添加aspx到dll的映射項(xiàng),語(yǔ)法如下:

  1. <add verb="*" path="aspx文件名" type="類(lèi)名,dll文件" /> 


aspx文件:需要被"路由"的虛擬名稱(chēng),擴(kuò)展名必須是aspx,否則IIS會(huì)先于ASP.NET運(yùn)行環(huán)境處理該文件。

dll文件: dll文件(應(yīng)用程序集)的名稱(chēng),不必輸入".dll".ASP.NET 首先在應(yīng)用程序的專(zhuān)用 \bin 目錄中搜索程序集 DLL,然后在系統(tǒng)程序集緩存中搜索程序集 DLL.

類(lèi)名: 由于一個(gè)dll可能會(huì)有多個(gè)名稱(chēng)空間或多個(gè)類(lèi),因此必須指明當(dāng)dll調(diào)用時(shí)自動(dòng)加載哪個(gè)類(lèi)。

例如,某一ASP.NET應(yīng)用程序的web.config文件如下:

  1. <?xml version="1.0"?> 
  2. <configuration> 
  3. <system.web> 
  4. <httpHandlers> 
  5. <add verb="*" path="index.aspx" type="BBS.IndexPage, bbs" /> 
  6. </httpHandlers> 
  7. </system.web> 
  8. </configuration> 

該配置文件告訴ASP.NET,在客戶端請(qǐng)求本應(yīng)用程序的index.aspx文件時(shí),直接調(diào)用應(yīng)用程序bin目錄下的bbs.dll,并自動(dòng)加載其中的BBS.IndexPage類(lèi)。

責(zé)任編輯:佚名 來(lái)源: IT168
相關(guān)推薦

2009-07-27 13:43:11

Web.config文ASP.NET

2009-08-05 14:11:56

ASP.NET Web

2009-07-29 14:23:08

ASP.NET配置文件

2011-04-19 14:35:58

ASP.NETWeb.config

2009-07-29 10:30:53

Web應(yīng)用程序ASP.NET

2009-07-24 10:41:00

ASP.NET Web

2009-07-21 15:23:55

預(yù)編譯Web應(yīng)用程序ASP.NET

2009-07-24 11:25:53

Web應(yīng)用程序工程ASP.NET MVC

2009-08-04 15:13:19

machine.conASP.NET 應(yīng)用程

2009-08-04 11:46:09

2009-07-27 16:09:50

2009-07-29 17:01:13

2009-08-05 10:16:54

部署ASP.NET應(yīng)用

2009-07-20 16:08:04

ASP.NET應(yīng)用程序

2009-07-21 15:02:19

ASP.NET應(yīng)用程序

2009-07-22 17:32:40

ASP.NET應(yīng)用程序

2009-07-23 13:26:21

2009-07-29 17:21:10

2009-07-28 17:49:44

ASP.NET數(shù)據(jù)庫(kù)連

2009-07-23 14:25:03

ASP.NET 2.0
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久国产精品一区二区 | 久久精品中文字幕 | 国产精品一区久久久 | 麻豆天堂| 懂色中文一区二区在线播放 | 中文字幕国产精品 | 色视频一区二区 | 国产综合精品一区二区三区 | 日韩欧美视频 | 亚洲精品二三区 | 成年精品 | 国产一级精品毛片 | 亚洲性综合网 | 久久伦理中文字幕 | 久久久99精品免费观看 | www.亚洲一区 | 91看片在线观看 | 污免费网站 | 夜夜操av| 欧美日韩国产高清 | 中文字幕日韩欧美 | 精品99爱视频在线观看 | 精品视频 免费 | 亚洲视频在线观看免费 | 日韩亚洲一区二区 | 欧美一区二区三区久久精品 | 国产第二页 | 一区二区三区四区免费视频 | 成人精品一区二区 | 羞羞免费网站 | 97影院2| 国产精品一区二区三区在线播放 | 在线观看国产 | 91久久久久 | 日本免费一区二区三区四区 | 午夜色婷婷 | 韩国精品在线 | 韩日av片 | 亚洲黄色av| 性生活毛片 | 欧美精品v|