中国韩国日本在线观看免费,A级尤物一区,日韩精品一二三区无码,欧美日韩少妇色

七天學(xué)會(huì)ASP.NET MVC (一)

發(fā)布時(shí)間:2016-05-23 18:05

  本文關(guān)鍵詞:MVC,由筆耕文化傳播整理發(fā)布。


Day1

  系列文章

七天學(xué)會(huì)ASP.NET MVC (一)——深入理解ASP.NET MVC

七天學(xué)會(huì)ASP.NET MVC (二)——ASP.NET MVC 數(shù)據(jù)傳遞

七天學(xué)會(huì)ASP.NET MVC (三)——ASP.Net MVC 數(shù)據(jù)處理

七天學(xué)會(huì)ASP.NET MVC (四)——用戶授權(quán)認(rèn)證問(wèn)題

七天學(xué)會(huì)ASP.NET MVC (五)——Layout頁(yè)面使用和用戶角色管理

 七天學(xué)會(huì)ASP.NET MVC (六)——線程問(wèn)題、異常處理、自定義URL

七天學(xué)會(huì)ASP.NET MVC(七)——創(chuàng)建單頁(yè)應(yīng)用

 

ASP.NET vs MVC vs WebForms

許多ASP.NET開(kāi)發(fā)人員開(kāi)始接觸MVC認(rèn)為MVC與ASP.NET完全沒(méi)有關(guān)系,是一個(gè)全新的Web開(kāi)發(fā),事實(shí)上ASP.NET是創(chuàng)建WEB應(yīng)用的框架而MVC是能夠用更好的方法來(lái)組織并管理代碼的一種更高級(jí)架構(gòu)體系,所以可以稱之為ASP.NET MVC。

我們可將原來(lái)的ASP.NET稱為 ASP.NET Webforms,新的MVC 稱為ASP.NET MVC.

ASP.NET Web Form

ASP.NET 在過(guò)去的十二年里,已經(jīng)服務(wù)并成功實(shí)現(xiàn)Web 應(yīng)用的開(kāi)發(fā)。我們首先了解一下為什么ASP.NET能夠如此流行,并成功應(yīng)用。

微軟編程語(yǔ)言從VB開(kāi)始就能夠成為流行并廣泛應(yīng)用,都源于其提供的強(qiáng)大的Visual studio能夠進(jìn)行可視化的編程,實(shí)現(xiàn)快速開(kāi)發(fā)。

使用VS時(shí),開(kāi)發(fā)人員能夠通過(guò)拖拽UI元素,并在后臺(tái)自動(dòng)生成這些界面的代碼。稱為后臺(tái)代碼。在后臺(tái)代碼中開(kāi)發(fā)人員可以添加操作這些UI元素的邏輯代碼。

因此微軟的可視化RAD架構(gòu)體系有兩方面組成,一方面是UI,一方面是后臺(tái)代碼。因此ASP.NET Web 窗體,包含ASPX和ASPX.CS,WPF包含XAML/XAML.CS等。

ASP.NET Web Form存在的問(wèn)題 我們不得不考慮的問(wèn)題是,既然ASP.NET Web Form 如此成功且具有優(yōu)勢(shì),為什么微軟還要推出ASP.NET MVC?主要是因?yàn)锳SP.NET Webform的性能問(wèn)題。在Web應(yīng)用程序中從兩方面來(lái)定義性能: 1. 響應(yīng)時(shí)間: 服務(wù)器響應(yīng)請(qǐng)求的耗時(shí) 2. 帶寬消耗: 同時(shí)可傳輸多少數(shù)據(jù)。 響應(yīng)時(shí)間 我們可以理解為什么ASP.NET Webform比較慢,如圖我們做了一些小的加載測(cè)試。分別使用ASP.Net MVC和ASP.Net Webform,發(fā)現(xiàn)ASP.Net MVC的響應(yīng)時(shí)間比Webform快了兩倍。

clip_image003

接下來(lái)我們?cè)谒伎家粋(gè)問(wèn)題為什么ASP.NET MVC的性能更好?看看下面這個(gè)示例,簡(jiǎn)單的UI代碼和UI的后臺(tái)代碼。 假如一個(gè)textbox的ASPX頁(yè)面: 對(duì)應(yīng)的UI后臺(tái)代碼:

Page_Load(object sender, EventArgs e) 2: { 3: TextBox1.Text = "Make it simple"; 4: TextBox1.BackColor = Color.Aqua; 5: }

運(yùn)行結(jié)果:

clip_image004

如果查看HTML輸出,則會(huì)顯示如下代碼: 我們?cè)賮?lái)思考上面提到的問(wèn)題 1. 這種HTML生成方式是否很有效?我們是否為了獲取如此簡(jiǎn)單的HTML而長(zhǎng)時(shí)間的消耗服務(wù)器 2. 開(kāi)發(fā)人員是否可以直接編寫(xiě)HTML?很難實(shí)現(xiàn)嗎?

 

clip_image005

通過(guò)分析我們可以得知,每一次請(qǐng)求都有轉(zhuǎn)換邏輯,運(yùn)行并轉(zhuǎn)換服務(wù)器控件為HTML輸出。如果我們的頁(yè)面使用表格,樹(shù)形控件等復(fù)雜控件,轉(zhuǎn)換就會(huì)變得很糟糕且非常復(fù)雜。HTML輸出也是非常復(fù)雜的。由于這些不必要的轉(zhuǎn)換從而增加了響應(yīng)時(shí)間。該問(wèn)題的解決方案就是擺脫后臺(tái)代碼,寫(xiě)成純HTML代碼。 帶寬消耗 ASP.NET開(kāi)發(fā)人員都非常熟悉Viewstates,因?yàn)樗軌蜃詣?dòng)保存post返回的狀態(tài),減少開(kāi)發(fā)時(shí)間。但是這種開(kāi)發(fā)時(shí)間的減少會(huì)帶來(lái)巨大的消耗,Viewstate增加了頁(yè)面的大小。在做的加載測(cè)試中,,與MVC 對(duì)比,我們發(fā)現(xiàn)Viewstate增加了兩倍的頁(yè)面存儲(chǔ)。以下是測(cè)試結(jié)果:

 

clip_image006

頁(yè)面尺寸的增加是因?yàn)関iewstate產(chǎn)生了額外的字節(jié)。下圖就是Viewstate的截圖。許多人可能會(huì)不同意此觀點(diǎn),但是眾所周知,開(kāi)發(fā)人員是如何工作的,如果有選擇,他們肯定會(huì)采取別的選擇。

 

clip_image008

  • HTML 消耗
  • 現(xiàn)在因?yàn)槲覀兌际呛笈_(tái)代碼和ASP.NET web server控件的努力,我們對(duì)于怎樣得到HTML以及如何使他們更有效沒(méi)有更好的辦法。如下面展示的ASPX 代碼,你能確定會(huì)生成什么樣的HTML代碼嗎?


  •   本文關(guān)鍵詞:MVC,由筆耕文化傳播整理發(fā)布。



    本文編號(hào):48818

  • 資料下載
    論文發(fā)表

    本文鏈接:http://www.lk138.cn/kejilunwen/jisuanjikexuelunwen/48818.html

    上一篇:李林峰的園子  
    下一篇:Thinking In Jdon

    Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

    版權(quán)申明:資料由用戶9a27c***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com