C# 創(chuàng)建使用存儲容器的ASP.NET 4.7網(wǎng)站
Web應(yīng)用程序讓W(xué)eb服務(wù)器向客戶端發(fā)送HTML代碼。這些代碼顯示在Web瀏覽器上,例如Microsoft Edge 或GoogleChrome。當(dāng)用戶在瀏覽器中輸入URL字符串時,HTTP請求會被發(fā)送到Web服務(wù)器。HTTP請求包 含所請求的文件名和其他信息,比如識別應(yīng)用程序的字符串、客戶端支持的語言以及屬于請求的其他數(shù)據(jù)。Web服務(wù)器返回一個包含HTML代碼的HTTP響應(yīng),這些代碼由Web瀏覽器解釋,向用戶顯示文本框、按鈕和列表。
ASP.NET是一種用服務(wù)器端代碼動態(tài)創(chuàng)建Web頁面的技術(shù)。這些Web頁面的開發(fā)方式與客戶端Windows程序具有諸多相似之處。如果不直接處理HTTP請求和響應(yīng),手動創(chuàng)建發(fā)送到客戶端的HTML代碼,還可以使用創(chuàng)建 HTML 代碼的控件,例如 TextBox、Label、ComboBox 和 Calendar。
為給客戶端系統(tǒng)上的Web應(yīng)用程序使用ASP.NET,只需要一個簡單的Web瀏覽器??墒褂肐nternet Explorer, Microsoft Edge、Google Chrome、Firefox或其他任何支持HTML的Web瀏覽器。客戶端系統(tǒng)不需要安裝.NET。
在服務(wù)器系統(tǒng)上,需要ASRNET運行庫。如果系統(tǒng)上有IIS,安裝.NET Framework時就會用服務(wù)器配置 ASP.NET運行庫。在開發(fā)期間,不需要使用IIS,因為Visual Studio提供了自己的ASRNET Web開發(fā)服務(wù)器,可以用它測試和調(diào)試應(yīng)用程序。
為理解ASRNET運行庫是如何工作的,考慮一個來自瀏覽器的典型Web請求(見下圖)。客戶端向服務(wù)器請求一個文件,如defkiltaspx或defkiltcshtml。ASP.NETWeb窗體頁面通常的文件擴展名是.aspx(盡管ASRNET MVC沒有特定的文件擴展名),而.cshtml用于基于Razor的網(wǎng)站。因為這些文件的擴展名用IIS注冊,或者ASRNET Web開發(fā)服務(wù)器能識別它們,所以ASP.NET運行庫和ASRNET工作進(jìn)程會啟動。US工作進(jìn)程被命名為w3wp.exe,駐留在Web服務(wù)器的應(yīng)用程序上。第一次請求defkult.cshtml時,啟動ASRNET解析器,編譯器編譯文件和C#代碼,這些CS代碼與.cshtml文件相關(guān),并創(chuàng)建一個程序集。然后.NET運行庫的J1T編譯器 把程序集編譯為本機代碼。之后銷毀Page對象。但程序集保留下來,用于后續(xù)請求,所以沒必要再次編譯程序集。
點擊加載更多評論>>