MVC表明: 模型-視圖-控制器 。MVC是一個架構良好而且易於測試和易於維護的開發模式。基於MVC模式的應用程序包含:html
・ Models: 表示該應用程序的數據並使用驗證邏輯來強制實施業務規則的數據類。瀏覽器
・ Views: 應用程序動態生成 HTML所使用的模板文件。架構
・ Controllers: 處理瀏覽器的請求,取得數據模型,而後指定要響應瀏覽器請求的視圖模板。mvc
本系列教程,咱們將覆蓋全部這些概念,並告訴您如何使用它們來構建應用程序。asp.net
首先,讓咱們建立一個控制器類。在解決方案資源管理器中,用鼠標右鍵單擊控制器文件夾,而後選擇「添加控制器「。工具
命名新的控制器爲「HelloWorldController」。保留默認的模板爲「Empty MVC controller」,並單擊「 添加「。學習
請注意,在解決方案資源管理器中會建立一個名爲HelloWorldController.cs的新文件。該文件會被IDE默認打開。測試
用下面的代碼替換該文件中的內容。spa
?.net
在這個例子中控制器方法將返回一個字符串的HTML。本控制器被命名HelloWorldController代碼中的第一種方法被命名爲Index。讓咱們從瀏覽器中調用它。運行應用程序(按F5或CTRL + F5)。在瀏覽器的地址欄中輸入路徑「HelloWorld「。(例如,在下面的示例中: http://localhost:1234/HelloWorld)頁面在瀏覽器中的表現以下面的截圖。在上面的方法中,代碼直接返回了一個字符串。你告訴系統只返回一些HTML,系統確實這樣作了!
根據傳入的URL,ASP.NET MVC調用不一樣的控制器類(和它們之中不一樣的操做方法)。使用ASP.NET MVC默認的URL路由邏輯格式,以肯定哪些代碼會被調用:
/[Controller]/[ActionName]/[Parameters]
第一部分的URL肯定那個控制器類會被執行。所以 /HelloWorld映射到HelloWorldController控制器類。第二部分的URL肯定要執行控制器類中的那個操做方法。所以 /HelloWorld/Index,會使得HelloWorldController
控制器類的Index 方法被執行。請注意,咱們只須要瀏覽 /HelloWorld路徑,默認狀況下會調用Index方法。若是沒有明確的指定操做方法,Index方法會默認的被控制器類調用。
瀏覽http://localhost:xxxx/HelloWorld/Welcome。Welcome方法會被運行並返回字符串:"This is the Welcome action method...」。 默認的MVC映射爲/[Controller]/[ActionName]/[Parameters] 對於這個URL,控制器類是HelloWorld,操做方法是Welcome,您尚未使用過URL的[Parameters] 部分。
讓咱們稍微修改一下這個例子,以即可以使用URL傳遞一些參數信息給控制器類(例如, /HelloWorld/Welcome?name=Scott&numtimes=4)。改變您的Welcome 方法來包含兩個參數,以下所示。須要注意的是,示例代碼使用了C#語言的可選參數功能,numTimes參數在不傳值時,默認值爲1。
運行您的應用程序並瀏覽此URL(http://localhost:xxxx/HelloWorld/Welcome?name=Scott&numtimes=4)。你能夠對參數name 和numtimes 嘗試不一樣的值。 ASP.NET MVC model binding system 會自動將地址欄中URL裏的 query string映射到您方法中的參數。
在這兩個例子中,控制器一直在作着MVC中「VC」部分的職能。 也就是視圖和控制器的工做。該控制器直接返回HTML內容。一般狀況下,您不會讓控制器直接返回HTML,由於這樣代碼會變得很是的繁瑣。相反,咱們一般會使用一個單獨的視圖模板文件來幫助生成返回的HTML。讓咱們來看看下面咱們如何能作到這一點吧。
控制器是MVC中的重要組成部分,有了本節知識的學習,相信你們會更加深刻地理解MVC。那麼在MVC開發過程當中,除了以上知識以外,還能夠藉助哪些工具呢?ComponentOne Studio ASP.NET MVC 是一款針對 MVC 平臺的控件包,它與 Visual Studio 無縫集成,徹底與 MVC6 和 ASP.NET 5.0 兼容,將大幅提升工做效率。
--------------------------------------------------------
譯者注:
本系列共9篇文章,翻譯自Asp.Net MVC4 官方教程,因爲本系列文章言簡意賅,篇幅適中,從一個示例開始講解,全文最終完成了一個管理影片的小系統,很是適合新手入門Asp.Net MVC4,並由此開始開發工做。9篇文章爲:
10.第三方控件Studio for ASP.NET Wijmo MVC4 工具應用