iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 2
0
Modern Web

ASP.NET MVC網頁程式介紹系列 第 2

[Day 02] 當ASP.NET長了腳,變成ASP.NET MVC

這篇文章主要是探討ASP.NET跟ASP.NET MVC的差別。

我是先學ASP.NET(以下簡稱WebForm),
然後才學ASP.NET MVC(以下簡稱MVC)的,
如果用習慣WebForm的控制項,
在進入MVC的時候會需要一點時間適應一下,
因為MVC的控制項是用Html的控制項,
我是大概花了幾天的時間適應,
還好之前有學過一些Html的語法,
加上現在網路上的參考資料還蠻多的,
所以沒有花很多時間適應。

雖然WebForm有控制項可以拉,
但其實最後到網頁上還是要轉成Html的語法,
只是WebForm會自動幫忙轉,
不用自己去記那些Html的語法,
但是如果要加上CSS,
還是要去瞭解他最後轉成Html用的是什麼標籤,
才有辦法套用CSS的部分,
這部分其實瀏覽器都幫我們做好了,
像我習慣用Google Chrome,
就可以用F12開發人員工具去看網頁的Html結構,
再套用到CSS就可以了。

不過這裡主要是介紹MVC,
WebForm的部分就此打住吧,
MVC跟WebForm的差別不只在控制項的部分,
其實WebForm也可以用Html的控制項,
只需要加上runat="server"就可以做到了,
有人說反而MVC解放了WebForm,
因為強迫使用Html語法反而可以相容其他網頁的語言
如PHP、JAVA等等,
要換成其他語言前端的部分可以很快就搞定。

其實MVC這個詞可以用在各種語言,
只是ASP.NET MVC強制將M(Model)、V(View)、C(Control)分開,
讓你一定要用這個架構去寫網頁,
不過我認為MVC跟WebForm之間最大的差別,
還是在於WebForm是先將控制項做出來,
然後產生PostBack事件來改變控制項內容,
所以會有Page.IsPostBack等語法,
但是MVC是先在後端將所有變數都準備好,
然後將變數傳到前端再Show出來,
每一次都要先經過Controller,
然後才透過View將網頁結果Show出來。

今天大概分享到這裡,
明天會開始最簡單的ASP.NET MVC的專案,
並對ASP.NET MVC的架構做簡單的說明。

--
小弟不才,
如果有謬誤或是要補充的,
都歡迎一起來討論!


上一篇
[Day 01] 什麼是MVC?能吃嗎?
下一篇
[Day 03] 我的第一個MVC專案(一)
系列文
ASP.NET MVC網頁程式介紹30

尚未有邦友留言

立即登入留言