﻿# ASP.NET MVC 學習資源整理

最近手邊的工作還是讓我忙的焦頭爛額，根本都沒時間進修什麼新技術，像是 ASP.NET MVC 想學很久了，卻遲遲沒時間著手學習，不過這段時間只要看到關於 ASP.NET MVC 的相關資訊都會收集下來，等待日後學習時可以一鼓作氣。以下是相關學習資源整理：

當然，學新技術的第一步通常都是從官方提供的網站開始找資料：

-   [http://www.ASP.net/mvc](http://www.ASP.net/mvc)
-   [ASP.NET MVC Training Kit](http://web.archive.org/web/20100101130345/http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=1E0BE0B2-910A-4676-9F3A-41E4D9C0FC08&displaylang=en)
-   [ASP.NET Model View Controller (MVC)](http://msdn.microsoft.com/en-us/library/dd394709.aspx)
-   [ASP.NET MVC on CodePlex](http://www.codeplex.com/aspnet/Wiki/View.aspx?title=MVC&referringTitle=Home)
-   [ASP.NET MVC Forum](http://forums.asp.net/1146.aspx)

我學新技術最喜歡從「**影片**」看起，看影片可以很快速的學到別人在使用新技術開發時的一些技巧，可以很快的抓到技術的重點與精髓。以下前四則影片是濃縮版的影片，短短幾分鐘就能讓你快速上手，最後一個連結是所有 ASP.NET MVC 的影片教學網址：

-   [Creating a Tasklist Application with ASP.NET MVC](http://www.asp.net/learn/mvc-videos/video-395.aspx)
-   [Understanding Models, Views, and Controllers](http://www.asp.net/learn/mvc-videos/video-396.aspx)
-   [Episode 1 with Paul Litwin — Creating a Data Driven MVC Application](http://www.asp.net/learn/mvc-videos/video-421.aspx)
-   [Episode 2 with Paul Litwin — Creating the Controller and View](http://www.asp.net/learn/mvc-videos/video-422.aspx)
-   [所有其他 ASP.NET MVC 的教學影片](http://www.asp.net/learn/mvc-videos/)
-   [Developing ASP.NET Applications Using the Model View Controller](https://web.archive.org/web/20110211064158/http://archive.visitmix.com:80/blogs/2008Sessions/T22/ "Developing ASP.NET Applications Using the Model View Controller") \[演講\]  
    (影片長度 1 小時 15 分)

另外，**範例程式**絕對少不了，前幾天介紹的 [Oxite](http://www.oxite.net/) 是一個非常完整的範例，沒有一點功力的人要看懂整個架構應該會有點吃力，在 ASP.NET MVC 官網上還另外提供三個 ASP.NET MVC 寫成的範例應用程式可供初學者下載：

-   ASP.NET MVC Storefront Starter Kit \[ [下載程式](http://www.codeplex.com/mvcsamples/SourceControl/ListDownloadableCommits.aspx) \] \[ [教學影片](http://www.asp.net/learn/mvc-videos/#MVCStorefrontStarterKit) \] \[ [討論區](http://forums.asp.net/1165.aspx) \] \[ 部落格 \]
-   Northwind Demo Application \[ [下載程式](http://haacked.com/archive/2008/05/23/updated-northwind-demo.aspx) \]
-   Kigg Demo Application \[ [下載程式](http://codeplex.com/kigg) \] \[ [Shoutout - remixing .net](http://dotnetshoutout.com/) \]
-   Asp.net MVC Open Source Site - prsync.com \[ [下載程式](http://www.codeplex.com/aspnetmvcprsync) \] \[ [prsync.com](http://prsync.com/) \]
    -   [ASP.NET MVC Result Cache](http://www.codeproject.com/KB/web-cache/mvcresultcache.aspx)

另外還有 [Quickstarts](https://learn.microsoft.com/en-us/aspnet/mvc/overview/getting-started/) 與 [Tutorials](http://www.asp.net/learn/mvc/) 系列的文章也是我的最愛之一：

-   [ASP.NET Model-View-Controller Applications Quickstarts](https://learn.microsoft.com/en-us/aspnet/mvc/overview/getting-started/)
-   [ASP.NET MVC Tutorials](http://www.asp.net/learn/mvc/) ( C# )

幾個知名的部落格也是必要的資訊來源：

-   [Stephen Walther on ASP.NET MVC](https://learn.microsoft.com/en-us/aspnet/mvc/overview/older-versions-1/)
-   [you've been HAACKED - aspnetmvc](https://haacked.com/tags/)
-   [ScottGu's Blog - Tags - MVC](https://weblogs.asp.net/scottgu/Tags/MVC)
-   [David Hayden \[MVP C#\]](https://web.archive.org/web/20101121082659/http://codebetter.com/blogs/david.hayden/default.aspx)
-   [SCOTT HANSELMAN'S COMPUTERZEN.COM - ASP.NET MVC](http://www.hanselman.com/blog/CategoryView.aspx?category=ASP.NET+MVC)
-   [Rob Conery's Blog](https://web.archive.org/web/20131102143642/http://blog.wekeroad.com/)
-   [MVC - LA.NET \[EN\]](https://web.archive.org/web/20130823084333/http://msmvps.com:80/blogs/luisabreu/archive/tags/MVC/default.aspx)
-   [Steve Sanderson's Blog – Tag on MVC](https://blog.stevensanderson.com/)

要是這些資料能消化完的話，菜鳥也能變天王了～ 但我知道大部分的人看到這些資料的第一印象一定是「怎麼都是英文的」，若各位想走在技術的最前線，英文的聽、讀能力絕對是少不了的，只有當下開始努力學習，才會有你想要的未來。

**中文文章**

-   [建置沒有 Web Form 的 Web 應用程式](http://msdn.microsoft.com/zh-tw/magazine/cc337884.aspx) \[[英文原文](http://msdn.microsoft.com/en-us/magazine/cc337884.aspx)\]

**其他連結 / 延伸閱讀**

-   [Microsoft ASP.NET MVC Beta](https://web.archive.org/web/20091004213930/http://www.microsoft.com/downloads/details.aspx?FamilyId=A24D1E00-CD35-4F66-BAA0-2362BDDE0766&displaylang=en)
    -   [ASP.NET MVC Beta Futures Download](http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=18459)
-   [ASP.NET MVC Design Gallery](http://www.asp.net/mvc/gallery/default.aspx?supportsjs=true)
-   Some Thoughts on Oxite
-   Oxite Refactor, Take 1
-   [Secure ASP.NET MVC Applications](https://weblogs.asp.net/shijuvarghese/secure-asp-net-mvc-applications)
-   [A (Quick) Web Developer's View of Oxite](http://blogs.msdn.com/cdndevs/archive/2008/12/14/a-quick-web-developer-s-overview-of-oxite.aspx)
-   [Optimizing your route collection for URL generation in ASP.NET MVC (and more!)](https://weblogs.asp.net/leftslipper/optimizing-your-route-collection-for-url-generation-in-asp-net-mvc-and-more)
-   [The MVC platform – validation support](https://web.archive.org/web/20140501232229/http://msmvps.com:80/blogs/luisabreu/archive/2008/12/17/the-mvc-platform-validation-support.aspx)
-   The MVC platform – the HtmlHelper class (part I)
-   The MVC platform – the HtmlHelper class (part II)
-   The MVC platform – the HtmlHelper class (part III)

**保哥的開發筆記**

-   [整理一大堆 ASP.NET MVC 速查表(Cheat Sheets)](/post/2010/01/13/ASPNET-MVC-Cheat-Sheets)
-   [ASP.NET MVC 開發心得分享 (1)：開發流程篇](/post/2009/01/28/ASPNET-MVC-Developer-Note-Part-1)
-   [ASP.NET MVC 開發心得分享 (2)：與原始碼共舞](/post/2009/02/08/ASPNET-MVC-Developer-Note-Part-2)
-   [ASP.NET MVC 開發心得分享 (3)：與 WebForm 共舞](/post/2009/02/16/ASPNET-MVC-Developer-Note-Part-3-Dancing-with-WebForm)
-   [ASP.NET MVC 開發心得分享 (4)：微調 Model Binder 屬性](/post/2009/03/13/ASPNET-MVC-Developer-Note-Part-4-Tuning-Model-Binder)
-   [ASP.NET MVC 開發心得分享 (5)：顯示資料分頁](/post/2009/03/21/ASPNET-MVC-Developer-Note-Part-5-Data-Paging)
-   [ASP.NET MVC 開發心得分享 (6)：小心使用 FormCollection](/post/2009/06/15/ASPNET-MVC-Developer-Note-Part-6-Model-Binder-and-FormCollection)
-   [ASP.NET MVC 開發心得分享 (7)：HandleUnknownAction](/post/2009/07/06/ASPNET-MVC-Developer-Note-Part-7-HandleUnknownAction)
-   [ASP.NET MVC 開發心得分享 (8)：Routing 設定注意事項](/post/2009/07/20/ASPNET-MVC-Developer-Note-Part-8-Routing)
-   [ASP.NET MVC 開發心得分享 (9)：發佈 MVC 網站的方式](/post/2009/07/27/ASPNET-MVC-Developer-Note-Part-9-Deploy-MVC-with-Resources-files)
-   [ASP.NET MVC 開發心得分享 (10)：隱藏 MVC 版本編號](/post/2009/09/02/ASPNET-MVC-Developer-Note-Part-10-Hide-MVC-Version-from-HTTP-Header)
-   [ASP.NET MVC 開發心得分享 (11)：對 Views 進行編譯檢查](/post/2009/09/04/ASPNET-MVC-Developer-Note-Part-11-Compile-Views-in-ASPNET-MVC)
-   [ASP.NET MVC 開發心得分享 (12)：Model Binder 的陷阱](/post/2009/11/12/ASPNET-MVC-Developer-Note-Part-12-The-Model-Binder-Traps)
-   [ASP.NET MVC 開發心得分享 (13)：在類別庫取得 RouteData](/post/2009/12/30/ASPNET-MVC-Developer-Note-Part-13-Get-RouteData-In-the-Class-Library)
-   [ASP.NET MVC 開發心得分享 (14)：實做 HTTP 301 永久轉向](/post/2010/01/03/ASPNET-MVC-Developer-Note-Part-14-Implement-HTTP-301-Moved-Permanently)
-   [ASP.NET MVC 開發心得分享 (15)：全球化和當地語系化](/post/2010/01/05/ASPNET-MVC-Developer-Note-Part-15-Globalization-and-Localization)
-   [ASP.NET MVC 開發心得分享 (16)：在網站專案下運作](/post/2010/02/22/ASPNET-MVC-Developer-Note-Part-15-Running-under-WebSite-Project.aspx)
-   [ASP.NET MVC 開發心得分享 (17)：OutputCache 帶來的問題](/post/2010/03/28/ASPNET-MVC-Developer-Note-Part-17-Output-Cache-impact.aspx)
-   [ASP.NET MVC 開發心得分享 (18)：非同步控制器開發](/post/2010/06/05/ASPNET-MVC-Developer-Note-Part-18-AsyncController)
-   [ASP.NET MVC 開發心得分享 (19)：Action 要小心使用 using](/post/2010/08/14/ASPNET-MVC-Developer-Note-Part-19-The-using-in-Action-method.aspx)
-   [ASP.NET MVC 開發心得分享 (20)：與原始碼共舞 ( .NET 4.0 )](/post/2010/09/09/ASPNET-MVC-Developer-Note-Part-20-Source-Code-With-DotNet-4.aspx)
-   [ASP.NET MVC 開發心得分享 (21)：Routing 觀念與技巧](/post/2011/08/01/ASPNET-MVC-Developer-Note-Part-21-Routing-Concepts-and-Skills.aspx)
-   [ASP.NET MVC 開發心得分享 (22)：關於 executionTimeout](/post/2011/09/08/ASPNET-MVC-Developer-Note-Part-22-About-httpRuntime-executionTimeout.aspx)
