雖然在上一篇文章中我們知道通過控制器可以在瀏覽器輸出HTML頁面,但是這不是控制器主要干的事,因為頁面上我為還要做很多好看的特效,頁面展示的事情當然交給視圖來做了;下面我們就來看看如何添加一個視圖
添加視圖
只需要在Index方法中右擊,選擇 "添加視圖"菜單項,然后再添加視圖窗口中,你不需要做任何修改,直接點擊“添加”,就可以看到VS自動為我們生成了Index視圖(你可以在解決方案中的Views文件夾下找到它Index.cshtml,他就藏在HelloWorld文件夾下)
修改視圖和布局
像下面那樣我們可以為視圖編輯HTML代碼,然后通過F5運行后輸入/HelloWorld或者是在Index.cshtml視圖的右鍵菜單中點擊"查看視圖"菜單(快捷鍵是Ctrl+K,Ctrl+G)
在解決方案中的Views/Shared/目錄下找到_Layout.cshtml文件,你會發現它和ASP.NET中的母版頁很像;在_Layout.cshtml中我們看到有個@RenderBody,它是個占位符,用來標記使用這個布局的視圖將渲染他們的主要內容的位置,簡單的說就是生成頁面的時候將你的視圖把它替換掉
你可以隨意的編輯布局(_Layout.cshtml)
看看我們的Home頁面上是不是多了個東西
通過控制器向視圖傳遞數據
回到之前的HelloWorldController控制器,我們為Index方法添加如下代碼,然后編輯Index的視圖頁面,運行之后可以在頁面中看到控制器傳遞到視圖的數據
public ActionResult Index(int times) { ViewBag.Message = "電影"; ViewBag.Times = times; return View(); }
MVC通過這種方式,將后臺業務和數據顯示隔離,視圖不參與業務代碼,關注點分離,不但代碼層次清晰而且開發、維護起來更方便。
http://www.asp.net/mvc/overview/older-versions/getting-started-with-aspnet-mvc4/adding-a-view
文章列表