一為動(dòng)態(tài)編譯(Dynamic Compilation),另一個(gè)為先行編譯(Precompilation)。

這讓程序設(shè)計(jì)師可以有更寬廣的選擇以決定不同網(wǎng)站何時(shí)該用何種編譯模型,不但彈性大大提升,且 " /> 天天干视频在线观看,日本欧美强乱视频在线,午夜视频在线观看免费观看在线观看

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

ASP.NET 2.0的編譯模型

ASP.NET 2.0支持兩種編譯模型(Compilation Model):
一為動(dòng)態(tài)編譯(Dynamic Compilation),另一個(gè)為先行編譯(Precompilation)。

這讓程序設(shè)計(jì)師可以有更寬廣的選擇以決定不同網(wǎng)站何時(shí)該用何種編譯模型,不但彈性大大提升,且若採(cǎi)用先行編譯網(wǎng)站執(zhí)行效能還可以更高,分述如下:

(一)ASP.NET網(wǎng)站動(dòng)態(tài)編譯(Dynamic Compilation)

  在ASP.NET 1.0時(shí)就已經(jīng)支援網(wǎng)站動(dòng)態(tài)編譯,也就是使用者第一次請(qǐng)求網(wǎng)站網(wǎng)頁(yè)時(shí),ASP.NET會(huì)先將網(wǎng)站程式編譯成一個(gè).dll組件檔,而后續(xù)的請(qǐng)求就會(huì)以此來(lái)回應(yīng),而編譯過(guò)后的網(wǎng)站執(zhí)行效能明顯較未編譯網(wǎng)站快上許多。

  然而雖說(shuō)ASP.NET 1.0具有動(dòng)態(tài)編譯的特性,但它只支援如.ASPx、.ascx、web.config或global.asax這幾種檔桉類(lèi)型,只要它們有異動(dòng)就會(huì)觸發(fā)系統(tǒng)進(jìn)行動(dòng)態(tài)編譯,但這個(gè)模式有個(gè)很明顯的問(wèn)題存在,就是像bin目錄下的組件、資源檔、Web Services等等在程式設(shè)計(jì)階段也常進(jìn)行修改,但這些檔桉即使用異動(dòng)也不會(huì)觸發(fā)系統(tǒng)重新進(jìn)行編譯,因此每每VS.NET 2003的專(zhuān)桉有修改異動(dòng),必須手動(dòng)重新編譯整個(gè)專(zhuān)桉,如此使用瀏覽器執(zhí)行網(wǎng)頁(yè)才會(huì)顯示最新修改的程式頁(yè)面。

  但是可能不少人嫌煩或者是初學(xué)者根本不知道修改后要手動(dòng)重新編譯,因此微軟針對(duì)動(dòng)態(tài)編譯又再進(jìn)行了更人性化的改良,現(xiàn)在針對(duì)類(lèi)別、Web Service、具型別的DataSet、Master Page、Themes也支援異動(dòng)時(shí)的動(dòng)態(tài)編譯,各位只要針對(duì)IE瀏覽器重新Refresh就會(huì)自動(dòng)觸發(fā)系統(tǒng)進(jìn)行重新編譯,看到的也當(dāng)然是最新的畫(huà)面,省卻程式設(shè)計(jì)師必須手動(dòng)進(jìn)行編譯,算是一個(gè)貼心的改良。

  ASP.NET 2.0動(dòng)態(tài)編譯和ASP.NET 1.0很像,但是更完美了,且當(dāng)您建置(Build)整個(gè)Web網(wǎng)站后,在bin目錄并不會(huì)產(chǎn)生.dll的專(zhuān)桉程式,許多ASP.NET 1.0的程式設(shè)計(jì)師開(kāi)始驚慌、疑惑與不安,為什麼找不到專(zhuān)桉.dll?沒(méi)有.dll檔要如何部署網(wǎng)站?等等的疑惑,其實(shí)沒(méi)什麼好疑惑的,各位之所以會(huì)疑惑是因?yàn)槟惆?a href=/itjie/ASPjishu/ target=_blank class=infotextkey>ASP.NET 1.0當(dāng)作是普世的標(biāo)準(zhǔn),凡是違反它的作法皆為異類(lèi),進(jìn)而ASP.NET 2.0的動(dòng)態(tài)編譯就成為您眼中的〝異類(lèi)〞,但那是人的執(zhí)著心與本位主義作崇的關(guān)係,事實(shí)上ASP.NET 2.0的動(dòng)態(tài)編譯才是更完美,完美到根本不再需要.dll,只要有使用者進(jìn)行請(qǐng)求時(shí)(Request),系統(tǒng)會(huì)自動(dòng)進(jìn)行動(dòng)態(tài)編譯(仍然看不見(jiàn).dll檔),所以若您要部署網(wǎng)站時(shí),利用複製網(wǎng)站工具將.ASPx、.ASPx.cs、Web.config、類(lèi)別檔全部複製一份到新網(wǎng)站就行了(唯獨(dú)沒(méi)有.dll檔),剩下的事情動(dòng)態(tài)編譯會(huì)替您全部打理好。

(二)ASP.NET網(wǎng)站先行編譯(Precompilation)

  除了上面所講的動(dòng)態(tài)編譯外,ASP.NET 2.0尚提供先行編譯(Precompilation)網(wǎng)站的功能,它透過(guò)「ASPNET_ Compiler.exe」這個(gè)指令來(lái)預(yù)先編譯整個(gè)網(wǎng)站,祭司用通俗觀點(diǎn)來(lái)說(shuō)明這樣的做法有幾個(gè)好處:

  (1)節(jié)省網(wǎng)頁(yè)第一次編譯的時(shí)間。以往在ASP.NET 1.0這個(gè)編譯的機(jī)制雖然有效加速ASP.NET網(wǎng)站整體性能,但許多使用者或不明究裡的初學(xué)者卻抱怨第一次執(zhí)行感覺(jué)好慢,而預(yù)先編譯整個(gè)網(wǎng)站是連第一次都省掉了,大概也不會(huì)有人再抱怨這個(gè)問(wèn)題了。

  (2)保護(hù)網(wǎng)頁(yè)程式碼智慧財(cái)產(chǎn)。在ASP.NET 1.0時(shí)可以將Code Behind編譯進(jìn)dll之中,但是若是以In-Line Code開(kāi)發(fā)或HTML標(biāo)籤開(kāi)發(fā)的程式則是一點(diǎn)保護(hù)作用也沒(méi)有;此外即便您用Code Behind模式開(kāi)發(fā)Web應(yīng)用程式,仍然會(huì)有許多標(biāo)籤會(huì)產(chǎn)生在.ASPx之中,這種情況尤以ASP.NET 2.0更甚,如SqlDataSource連SQL命令都會(huì)顯示在HTML之中;故透過(guò)預(yù)先編譯不但連程式碼都可以編譯進(jìn)去,甚至連.ASPx網(wǎng)頁(yè)中的HTML標(biāo)籤也可以一併編譯進(jìn)去,對(duì)于程式碼的保護(hù)可以說(shuō)多了一層保障與選擇。

  然而我們來(lái)看看微軟對(duì)于先行編譯好處的官方說(shuō)法:

  (1)由于頁(yè)面和程式碼檔不需在第一次要求時(shí)編譯,因此使用者可得到更快的回應(yīng)時(shí)間,這對(duì)于經(jīng)常更
       新的大型網(wǎng)站特別有用。
  (2)使用者瀏覽網(wǎng)頁(yè)之前,識(shí)別編譯時(shí)期錯(cuò)誤的方法。
  (3)不需原始程式碼,即可建立可部署到實(shí)際執(zhí)行伺服器已編譯網(wǎng)站版本的能力。

NET技術(shù)ASP.NET 2.0的編譯模型,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 91精品在线观看视频 | 91久久国产口精品久久久久 | 国产一区二区三区免费播放 | youjizz日韩 | 精品分享| 国产精品自产拍视频观看 | 日本精品高清一区二区2021 | 亚洲精品tv久久久久 | 国产不卡一区二区三区免费视 | 丝袜诱惑一区二区 | 性夜黄a爽爽免费视频国产 性夜影院爽黄e爽痛轻点www | 99精品久久久久久久免费看蜜月 | 欧美视频福利 | 成年美女黄网站色 | 成人精品一区二区久久 | 亚洲一二区视频 | 国产精品hd | 国产一区二区三区免费观看 | 亚洲图片欧美日韩 | 色偷偷7777www人 | 91视频看 | 精品72久久久久久久中文字幕 | 国产精品亚洲一区二区三区 | fefe66毛片免费看 | 久综合网 | 四虎在线免费观看视频 | 欧美人禽杂交狂配在线观看视频 | 国产短视频精品区第一页 | 国内精品视频一区二区三区 | 99国产精品国产精品 | 91网站网址最新 | 色四播播| 黄篇网站在线观看 | 欧美人与物videos另 | 国产成人理在线观看视频 | 久久亚洲精品国产精品婷婷 | 亚洲第1页| 色久悠悠色久在线观看 | 色综合天 | a色视频| 亚洲国产第一区二区三区 |