SlideShare a Scribd company logo
1 of 21
ASP.NET MVC
快速上手
主講:饅頭
About Me
資訊管理系 四年級
微軟最有價值專家(ASP/IIS)
Study4.TW 常任講師

興趣:
ASP.net MVC、Web Design 、
SQL Server、Virtualization、
Windows Server

部落格:饅頭小舖
大綱
•

什麼是MVC,與Asp.net有哪些不同

•

MVC如何運作(Routing)

•

M、V、C他們的工作

•

MVC的開發

•

MVC的部署方式(Azure Web Site、IIS)
什麼是MVC,
與Asp.net有哪些不同?
MVC 設計樣式
•

MVC模式最早由Trygve Reenskaug在1978年
提出,是全錄帕羅奧多研究中心(Xerox PARC)
在20世紀80年代為程式語言Smalltalk發明的一
種軟體設計模式

•

控制器Controller- 負責轉發請求,對請求進行
處理。

•

檢視View - 介面設計人員進行圖形介面設計。

•

模型Model - 程式設計師編寫程式應有的功能
(實作演算法等等)、資料庫專家進行資料管
理和資料庫設計(可以實作具體的功能)。
Asp.net MVC VS Asp.net
Asp.net MVC
優點
•

少了Viewstate,網站載入的流量減
少與速度增加

•

採用JS、CSS、HTML開發

•

關注點分離,各司其職

•

容易測試

缺點
•

許多功能與版面需要靠JS、CSS來呈
現,對初學者(JS或CSS不熟的人)門
檻較高
Asp.net
優點
•

可以使用元件拖拉成頁面

•

缺點

可見及所得的開發

•

容易開發,入門簡單

•

厚重的Viewstate造成傳輸量過大,
造成畫面載入速度變慢

•

JS、CSS、HTML夾雜頁面中,難以
維護

•

前後端開發難以切割同步
Asp.net MVC VS Asp.net
•

少了Viewstate,增加載入的速度並減少傳輸量

•

回到網頁的初衷,載用JS、CSS與HTML開發

•

前後台可切割同時開發,增加開發速度
MVC如何運作?
MVC的網址
•

資料夾?

•

{controller}/{action}/{id}

•

Controller ->縣市名稱

•

action ->街道名稱

•

Id ->樓層
M、V、C他們的工作
Model
•

用於封裝與應用程式的業務邏輯相關的資料以及對資料的處理

•

對資料直接存取的權力

•

不依賴「檢視」和「控制器」

•

不關心它會被如何顯示或是如何被操作
View
•

顯示應用程式中使用者介面 (UI) 的元件

•

檢視層能夠實作資料有目的的顯示(理論上,這不是必需的)

•

沒有程式上的邏輯(一般情況中)

•

通常此 UI 是從模型資料建立
Controller
•

控制器起到不同層面間的組織,控制應用程式的流程

•

處理使用者的回應與事件處理
MVC的開發
MVC的部署方式
IIS佈署
•

Web Deploy

•

FTP
佈署到Azure的網站
Thanks
參考資料
•

http://zh.wikipedia.org/wiki/MVC

•

http://msdn.microsoft.com/zhtw/library/dd381412(v=vs.108).aspx

More Related Content

What's hot

2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練52016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5Duran Hsieh
 
Study4 love.2016.2.20.ionic
Study4 love.2016.2.20.ionicStudy4 love.2016.2.20.ionic
Study4 love.2016.2.20.ionicKyle Shen
 
Flash 游戏应用框架和模块化开发 邱广钦
Flash 游戏应用框架和模块化开发 邱广钦Flash 游戏应用框架和模块化开发 邱广钦
Flash 游戏应用框架和模块化开发 邱广钦FLASH开发者交流会
 
Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)Gelis Wu
 
Introduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 FeaturesIntroduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 FeaturesJeff Chu
 
高雄前端上課簡報 #29
高雄前端上課簡報 #29高雄前端上課簡報 #29
高雄前端上課簡報 #29reactmaker9527
 
Angular js入门分享 by 王栋
Angular js入门分享   by 王栋Angular js入门分享   by 王栋
Angular js入门分享 by 王栋栋 王
 

What's hot (8)

2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練52016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
 
Study4 love.2016.2.20.ionic
Study4 love.2016.2.20.ionicStudy4 love.2016.2.20.ionic
Study4 love.2016.2.20.ionic
 
Angularjs
AngularjsAngularjs
Angularjs
 
Flash 游戏应用框架和模块化开发 邱广钦
Flash 游戏应用框架和模块化开发 邱广钦Flash 游戏应用框架和模块化开发 邱广钦
Flash 游戏应用框架和模块化开发 邱广钦
 
Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)
 
Introduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 FeaturesIntroduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 Features
 
高雄前端上課簡報 #29
高雄前端上課簡報 #29高雄前端上課簡報 #29
高雄前端上課簡報 #29
 
Angular js入门分享 by 王栋
Angular js入门分享   by 王栋Angular js入门分享   by 王栋
Angular js入门分享 by 王栋
 

Viewers also liked

Asp.net 5 新功能與變革
Asp.net 5 新功能與變革Asp.net 5 新功能與變革
Asp.net 5 新功能與變革Gelis Wu
 
windows phone 8.1 新功能與跨平台開發
windows phone 8.1 新功能與跨平台開發windows phone 8.1 新功能與跨平台開發
windows phone 8.1 新功能與跨平台開發Study4TW
 
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )Study4TW
 
Disarmingly Forthright MSCS Advice
Disarmingly Forthright MSCS AdviceDisarmingly Forthright MSCS Advice
Disarmingly Forthright MSCS AdviceAndré Peric Tavares
 
使用Visual Studio 2013 進行敏捷開發
使用Visual Studio 2013 進行敏捷開發使用Visual Studio 2013 進行敏捷開發
使用Visual Studio 2013 進行敏捷開發Study4TW
 
Bruce-輕鬆上手Asp.net web api 2.1.2
Bruce-輕鬆上手Asp.net web api 2.1.2Bruce-輕鬆上手Asp.net web api 2.1.2
Bruce-輕鬆上手Asp.net web api 2.1.2Study4TW
 
Steps to restoring a corvette Pt1
Steps to restoring a corvette Pt1Steps to restoring a corvette Pt1
Steps to restoring a corvette Pt1KC123456789
 
La standards chart
La standards chartLa standards chart
La standards chartErin Frickey
 
James-版本控制
James-版本控制James-版本控制
James-版本控制Study4TW
 
Catalogue Piscine Piscinelle - Année 2015
Catalogue Piscine Piscinelle - Année 2015  Catalogue Piscine Piscinelle - Année 2015
Catalogue Piscine Piscinelle - Année 2015 achoux
 
如何攻破大型副本 大型專案的開發與團隊合作經驗 聊天室
如何攻破大型副本   大型專案的開發與團隊合作經驗 聊天室如何攻破大型副本   大型專案的開發與團隊合作經驗 聊天室
如何攻破大型副本 大型專案的開發與團隊合作經驗 聊天室Study4TW
 
Julia arnett nuclear warproject-2013
Julia arnett nuclear warproject-2013Julia arnett nuclear warproject-2013
Julia arnett nuclear warproject-2013jarnett14
 
Comunication portfolio
Comunication portfolioComunication portfolio
Comunication portfolioAnil Ziberi
 

Viewers also liked (18)

Asp.net 5 新功能與變革
Asp.net 5 新功能與變革Asp.net 5 新功能與變革
Asp.net 5 新功能與變革
 
Ciencia activa
Ciencia  activaCiencia  activa
Ciencia activa
 
windows phone 8.1 新功能與跨平台開發
windows phone 8.1 新功能與跨平台開發windows phone 8.1 新功能與跨平台開發
windows phone 8.1 新功能與跨平台開發
 
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )
使用下一代的Visual studio 14開發下一代的asp.net mvc v next ( mvc 6 )
 
Ahmed ammar
Ahmed ammarAhmed ammar
Ahmed ammar
 
Disarmingly Forthright MSCS Advice
Disarmingly Forthright MSCS AdviceDisarmingly Forthright MSCS Advice
Disarmingly Forthright MSCS Advice
 
Ahmed ammar
Ahmed ammarAhmed ammar
Ahmed ammar
 
使用Visual Studio 2013 進行敏捷開發
使用Visual Studio 2013 進行敏捷開發使用Visual Studio 2013 進行敏捷開發
使用Visual Studio 2013 進行敏捷開發
 
Bruce-輕鬆上手Asp.net web api 2.1.2
Bruce-輕鬆上手Asp.net web api 2.1.2Bruce-輕鬆上手Asp.net web api 2.1.2
Bruce-輕鬆上手Asp.net web api 2.1.2
 
Steps to restoring a corvette Pt1
Steps to restoring a corvette Pt1Steps to restoring a corvette Pt1
Steps to restoring a corvette Pt1
 
Ciencia activa
Ciencia  activaCiencia  activa
Ciencia activa
 
La standards chart
La standards chartLa standards chart
La standards chart
 
James-版本控制
James-版本控制James-版本控制
James-版本控制
 
Catalogue Piscine Piscinelle - Année 2015
Catalogue Piscine Piscinelle - Année 2015  Catalogue Piscine Piscinelle - Année 2015
Catalogue Piscine Piscinelle - Année 2015
 
如何攻破大型副本 大型專案的開發與團隊合作經驗 聊天室
如何攻破大型副本   大型專案的開發與團隊合作經驗 聊天室如何攻破大型副本   大型專案的開發與團隊合作經驗 聊天室
如何攻破大型副本 大型專案的開發與團隊合作經驗 聊天室
 
Julia arnett nuclear warproject-2013
Julia arnett nuclear warproject-2013Julia arnett nuclear warproject-2013
Julia arnett nuclear warproject-2013
 
Comunication portfolio
Comunication portfolioComunication portfolio
Comunication portfolio
 
Inductive effect
Inductive effectInductive effect
Inductive effect
 

Similar to ASP.NET MVC 快速上手

2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練42016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4Duran Hsieh
 
ASP.NET MVC The Begining
ASP.NET MVC The BeginingASP.NET MVC The Begining
ASP.NET MVC The BeginingSimon Huang
 
與 Asp.net mvc 的第一次親密接觸 - twMVC#1
與 Asp.net mvc 的第一次親密接觸 - twMVC#1與 Asp.net mvc 的第一次親密接觸 - twMVC#1
與 Asp.net mvc 的第一次親密接觸 - twMVC#1twMVC
 
Asp.net mvc 基礎
Asp.net mvc 基礎Asp.net mvc 基礎
Asp.net mvc 基礎Gelis Wu
 
KSDG-ASP.NET MVC 5 Overview (偽三國誌)
KSDG-ASP.NET MVC 5 Overview (偽三國誌)KSDG-ASP.NET MVC 5 Overview (偽三國誌)
KSDG-ASP.NET MVC 5 Overview (偽三國誌)Bruce Chen
 
Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2twMVC
 
twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC
 
Asp.net+mvc4框架揭秘
Asp.net+mvc4框架揭秘Asp.net+mvc4框架揭秘
Asp.net+mvc4框架揭秘Zhenhua Tang
 
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC
 
利用 ASP.NET MVC 提升您的 Web 應用程式
利用 ASP.NET MVC 提升您的 Web 應用程式利用 ASP.NET MVC 提升您的 Web 應用程式
利用 ASP.NET MVC 提升您的 Web 應用程式Chui-Wen Chiu
 
Non-MVC Web Framework
Non-MVC Web FrameworkNon-MVC Web Framework
Non-MVC Web FrameworkFred Chien
 
twMVC#10 | ASP.NET MVC Model 的設計與使用
twMVC#10 | ASP.NET MVC Model 的設計與使用twMVC#10 | ASP.NET MVC Model 的設計與使用
twMVC#10 | ASP.NET MVC Model 的設計與使用twMVC
 
ASP.NET MVC Model 的設計與使用 twMVC#10
ASP.NET MVC Model 的設計與使用 twMVC#10ASP.NET MVC Model 的設計與使用 twMVC#10
ASP.NET MVC Model 的設計與使用 twMVC#10twMVC
 
How to ASP.NET MVC4
How to ASP.NET MVC4How to ASP.NET MVC4
How to ASP.NET MVC4Daniel Chou
 
Single-Page Application Design Principles 101
Single-Page Application Design Principles 101Single-Page Application Design Principles 101
Single-Page Application Design Principles 101Jollen Chen
 
前端Mvc探讨及实践
前端Mvc探讨及实践前端Mvc探讨及实践
前端Mvc探讨及实践taobao.com
 
MVC MVVM MVVMC
MVC MVVM MVVMCMVC MVVM MVVMC
MVC MVVM MVVMCNg Hui Qin
 
ASP.NET MVC 5線上課程(入門前三天)
ASP.NET MVC 5線上課程(入門前三天)ASP.NET MVC 5線上課程(入門前三天)
ASP.NET MVC 5線上課程(入門前三天)MIS2000 Lab.
 

Similar to ASP.NET MVC 快速上手 (20)

2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練42016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
 
ASP.NET MVC The Begining
ASP.NET MVC The BeginingASP.NET MVC The Begining
ASP.NET MVC The Begining
 
與 Asp.net mvc 的第一次親密接觸 - twMVC#1
與 Asp.net mvc 的第一次親密接觸 - twMVC#1與 Asp.net mvc 的第一次親密接觸 - twMVC#1
與 Asp.net mvc 的第一次親密接觸 - twMVC#1
 
Asp.net mvc 基礎
Asp.net mvc 基礎Asp.net mvc 基礎
Asp.net mvc 基礎
 
KSDG-ASP.NET MVC 5 Overview (偽三國誌)
KSDG-ASP.NET MVC 5 Overview (偽三國誌)KSDG-ASP.NET MVC 5 Overview (偽三國誌)
KSDG-ASP.NET MVC 5 Overview (偽三國誌)
 
Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2
 
twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有
 
Asp.net+mvc4框架揭秘
Asp.net+mvc4框架揭秘Asp.net+mvc4框架揭秘
Asp.net+mvc4框架揭秘
 
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸
 
ASP.net MVC
ASP.net MVCASP.net MVC
ASP.net MVC
 
利用 ASP.NET MVC 提升您的 Web 應用程式
利用 ASP.NET MVC 提升您的 Web 應用程式利用 ASP.NET MVC 提升您的 Web 應用程式
利用 ASP.NET MVC 提升您的 Web 應用程式
 
Asp.Net Mvc 1.0
Asp.Net Mvc 1.0Asp.Net Mvc 1.0
Asp.Net Mvc 1.0
 
Non-MVC Web Framework
Non-MVC Web FrameworkNon-MVC Web Framework
Non-MVC Web Framework
 
twMVC#10 | ASP.NET MVC Model 的設計與使用
twMVC#10 | ASP.NET MVC Model 的設計與使用twMVC#10 | ASP.NET MVC Model 的設計與使用
twMVC#10 | ASP.NET MVC Model 的設計與使用
 
ASP.NET MVC Model 的設計與使用 twMVC#10
ASP.NET MVC Model 的設計與使用 twMVC#10ASP.NET MVC Model 的設計與使用 twMVC#10
ASP.NET MVC Model 的設計與使用 twMVC#10
 
How to ASP.NET MVC4
How to ASP.NET MVC4How to ASP.NET MVC4
How to ASP.NET MVC4
 
Single-Page Application Design Principles 101
Single-Page Application Design Principles 101Single-Page Application Design Principles 101
Single-Page Application Design Principles 101
 
前端Mvc探讨及实践
前端Mvc探讨及实践前端Mvc探讨及实践
前端Mvc探讨及实践
 
MVC MVVM MVVMC
MVC MVVM MVVMCMVC MVVM MVVMC
MVC MVVM MVVMC
 
ASP.NET MVC 5線上課程(入門前三天)
ASP.NET MVC 5線上課程(入門前三天)ASP.NET MVC 5線上課程(入門前三天)
ASP.NET MVC 5線上課程(入門前三天)
 

ASP.NET MVC 快速上手