C# 創(chuàng)建 ASP.NET Web API
計(jì)算機(jī)編程概念“應(yīng)用程序編程接口(Application Programming Interface,API)”己經(jīng)存在幾十年了,通常描述為一個(gè)模塊,包含一組可用于構(gòu)建軟件程序的函數(shù)。
最初,從Windows客戶端應(yīng)用程序的角度看,這些模塊是動(dòng)態(tài)鏈接庫(.dll),可通過“以編程方式訪問”的接口向其他程序公開內(nèi)部函數(shù)。在這樣的系統(tǒng)中,當(dāng)消費(fèi)程序使用API時(shí),將會(huì)依賴接口的模式。修改接口,會(huì)導(dǎo)致消費(fèi)程序異常和失敗,因?yàn)樵L問和執(zhí)行模塊內(nèi)函數(shù)的當(dāng)前過程不再有效,一旦程序依賴一個(gè)接口,它就不應(yīng)該改變,當(dāng)它改變時(shí),該事件就通常稱為DLL Hell,有關(guān)DLL Hell的更多信息,可以閱讀http://www. desaware.com/tech/dllhell.aspx上的.文章。
隨著時(shí)間的推移,互聯(lián)網(wǎng)和內(nèi)聯(lián)網(wǎng)解決方案的實(shí)現(xiàn)成為主流,也實(shí)現(xiàn)了一些依賴技術(shù),如Web服務(wù)和Windows Communication Foundation(WCF)。Web服務(wù)和WCF呈現(xiàn)了正式協(xié)定的接口,向其他程序公開包含在其中的函數(shù)。在前面提到的DLL AH中,模塊和使用它的程序在同一臺(tái)計(jì)算機(jī)上,而Web服務(wù)和WCF在一臺(tái)Web服務(wù)器上托管。由于托管在一臺(tái)互聯(lián)網(wǎng)或局域網(wǎng)Web服務(wù)器上,因此訪問Web接口不再局限于一臺(tái)計(jì)算機(jī),而可以是任何設(shè)備,從任何有互聯(lián)網(wǎng)或內(nèi)聯(lián)網(wǎng)連接的地方訪問。
回顧云優(yōu)化堆棧。在討論中提到,為進(jìn)行云優(yōu)化,程序必須占用空間小,能處理高吞吐量,支持跨平臺(tái)。ASP.NET Web API基于ASP.NET MVC(模型-視圖-控制器)的概念.這與新的云優(yōu)化堆棧的定義一致。如果己經(jīng)創(chuàng)建了Web服務(wù)或WCF,或者過去使用過,就將看到,ASP.NET Web API相對(duì)而言更簡(jiǎn)單、緊 湊。如果從未使用它們,也能體會(huì)到這一點(diǎn)。
點(diǎn)擊加載更多評(píng)論>>