欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
.net軟件開(kāi)發(fā) :ASP.NET底層架構探索之進(jìn)入ASP.NET

.net軟件開(kāi)發(fā) :ASP.NET底層架構探索之進(jìn)入ASP.NET

來(lái)源:http://www.accp-teem.com.cn/ArticleView/2007-1-15/Article_View_887.Htm

ASP.NET是一個(gè)非常強大的構建Web應用的平臺,它提供了極大的靈活性和能力以致于可以用它來(lái)構建所有類(lèi)型的Web應用。絕大多數的人只熟悉高層的框架如WebForms和WebServices-這些都在A(yíng)SP.NET層次結構在最高層。在這篇文章中我將會(huì )討論ASP.NET的底層機制并解釋請求(request)是怎么從Web服務(wù)器傳送到ASP.NET運行時(shí)然后如何通過(guò)ASP.NET管道來(lái)處理請求。


  對我而言了解平臺的內幕通常會(huì )帶來(lái)滿(mǎn)足感和舒適感,深入了解也能幫助我寫(xiě)出更好的應用。知道可以使用哪些工具以及他們是怎樣作為整個(gè)復雜框架的一部分來(lái)互相配合的可以更容易地找出最好的解決方案,更重要的是可以在出現問(wèn)題時(shí)更好的解決它們。這篇文章的目標是從系統級別了解ASP.NET并幫助理解請求(request)是如何在A(yíng)SP.NET的處理管道中流轉的。同樣,我們會(huì )了解核心引擎和Web請求如何在那里結束。這些信息大部分并不是你在日常工作時(shí)必須了解的,但是它對于理解ASP.NET架構如何把請求路由到你的代碼(通常是非常高層的)中是非常有益的。

  不管怎么樣,ASP.NET從更低的層次上提供了更多的靈活性。HTTP運行時(shí)和請求管道在構建WebForms和WebServices上提供了同樣的能力-它們事實(shí)上都是建立在。NET托管代碼上的。而且所有這些同樣的功能對你也是可用的,你可用決定你是否需要建立一個(gè)比WebForms稍低一點(diǎn)層次的定制的平臺。

  WebForms顯然是最簡(jiǎn)單的構建絕大多數Web接口的方法,不過(guò)如果你是在建立自定義的內容處理器(handler),或者有在處理輸入輸出內容上有特殊的要求,或者你需要為另外的應用建立一個(gè)定制的應用程序服務(wù)接口,使用這些更低級的處理器(handler)或者模塊(module)能提供更好的性能并能對實(shí)際請求處理提供更多的控制。在WebForms和WebServices這些高層實(shí)現提供它們那些能力的同時(shí),它們也對請求增加了一些額外負擔,這些都是在更底層可以避免的。

  ASP.NET是什么

  讓我們以一個(gè)簡(jiǎn)單的定義開(kāi)始:什么是ASP.NET?我喜歡這樣定義ASP.NET:

  ASP.NET是一個(gè)復雜的使用托管代碼來(lái)從頭到尾處理Web請求的引擎。

  它并不只是WebForms和WebServies…

  ASP.NET是一個(gè)請求處理引擎。它接收一個(gè)發(fā)送過(guò)來(lái)的請求,把它傳給內部的管道直到終點(diǎn),作為一個(gè)開(kāi)發(fā)人員的你可以在這里附加一些代碼來(lái)處理請求。這個(gè)引擎是和HTTP/Web服務(wù)器完全分隔的。事實(shí)上,HTTP運行時(shí)是一個(gè)組件,使你可以擺脫IIS或者任何其他的服務(wù)器程序,將你自己的程序寄宿在內。例如,你可以將ASP.NET運行時(shí)寄宿在一個(gè)Windows form程序中(查看http://www.west-wind.com/presentations/aspnetruntime/aspnetruntime.asp可以得到更加詳細的信息)

  運行時(shí)提供了一個(gè)復雜但同時(shí)非常優(yōu)雅的在管道中路由請求的機制。其中有很多相關(guān)的對象,大多數都是可擴展的(通過(guò)繼承或者事件接口),在幾乎所有的處理流程上都是如此。所以這個(gè)框架具有高度可擴展性。通過(guò)這個(gè)機制,掛接到非常底層的接口(比如緩存,認證和授權)都變得可能了。你甚至可以在預處理或者處理后過(guò)濾內容,也可以簡(jiǎn)單的將符合特殊標記的請求直接路由你的代碼或者另一個(gè)URL上。存在著(zhù)許多不同的方法來(lái)完成同一件事,但是所有這些方法都是可以簡(jiǎn)單直接地實(shí)現的,同時(shí)還提供了靈活性,可以得到最好的性能和開(kāi)發(fā)的簡(jiǎn)單性。

  整個(gè)ASP.NET引擎是完全建立在托管代碼上的,所有的擴展功能也是通過(guò)托管代碼擴展來(lái)提供的

  整個(gè)ASP.NET引擎是完全建立在托管代碼上的,所有的擴展功能也是通過(guò)托管代碼擴展來(lái)提供的。這是對。NET框架具有構建復雜而且高效的框架的能力的最好的證明。ASP.NET最令人印象深刻的地方是深思熟慮的設計,使得框架非常的容易使用,又能提供掛接到請求處理的幾乎所有部分的能力。

  通過(guò)ASP.NET你可以從事從前屬于ISAPI擴展和IIS過(guò)濾器領(lǐng)域的任務(wù)-有一些限制,但是比起ASP來(lái)說(shuō)是好多了。ISAPI是一個(gè)底層的Win32風(fēng)格的API,有著(zhù)非常粗劣的接口而且難以用來(lái)開(kāi)發(fā)復雜的程序。因為ISAPI非常底層,所以它非常的快,但是對于應用級的開(kāi)發(fā)者來(lái)說(shuō)是十分難以管理的。所以,ISAPI通常用來(lái)提供橋接的接口,來(lái)對其他應用或者平臺進(jìn)行轉交。但是這并不意味者ISAPI將消亡。事實(shí)上,ASP.NET在微軟的平臺上就是通過(guò)ISAPI擴展來(lái)和IIS進(jìn)行交互的,這個(gè)擴展寄宿著(zhù)。NET運行時(shí)和ASP.NET運行時(shí)。ISAPI提供了核心的接口,ASP.NET使用非托管的ISAPI代碼通過(guò)這個(gè)接口來(lái)從Web服務(wù)器獲取請求,并發(fā)送響應回客戶(hù)端。ISAPI提供的內容可以通過(guò)通用對象(例如HttpRequest和HttpResponse)來(lái)獲取,這些對象通過(guò)一個(gè)定義良好并有很好訪(fǎng)問(wèn)性的接口來(lái)暴露非托管數據。
 

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
從底層角度看ASP.NET-A low-level Look at the ASP.NET...
ASP.NET底層的初步認識與理解
NancyFx And ReactiveX
IIS5、IIS6、IIS7的ASP.net 請求處理過(guò)程比較
在 ASP.NET 中執行 URL 重寫(xiě)
C#面試題和答案
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久