在本節中,您需要修改HelloWorldController類,從而使用視圖模板文件,干凈優雅的封裝生成返回到客戶端瀏覽器HTML的過程。
您將創建一個視圖模板文件,其中使用了ASP.NET MVC 3所引入的[Razor視圖引擎](http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx)。Razor視圖模板文件使用.cshtml文件擴展名,并提供了一個優雅的方式來使用C#語言創建所要輸出的HTML。用Razor編寫一個視圖模板文件時,將所需的字符和鍵盤敲擊數量降到了最低,并實現了快速,流暢的編碼工作流程。
當前在控制器類中的Index方法返回了一個硬編碼的字符串。更改Index方法返回一個View對象,如下面的示例代碼:
~~~
public ActionResult Index()
{
return View();
}
~~~
上面的Index方法使用一個視圖模板來生成一個HTML返回給瀏覽器。控制器的方法(也被稱為[action method(操作方法)](http://rachelappel.com/asp.net-mvc-actionresults-explained) ),如上面的Index方法,一般返回一個[ActionResult](http://msdn.microsoft.com/en-us/library/system.web.mvc.actionresult.aspx)(或從[ActionResult](http://msdn.microsoft.com/en-us/library/system.web.mvc.actionresult.aspx)所繼承的類型),而不是原始的類型,如字符串。
在該項目中,您可以使用的Index方法來添加一個視圖模板。要做到這一點,在Index方法中單擊鼠標右鍵,然后單擊“ **添加視圖“**。
[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203283518.png)
出現**添加視圖**對話框。保留缺省值,并單擊**添加**按鈕:
[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203297596.png)
您可以在**解決方案資源管理器**中看到MvcMovie\HelloWorld文件夾和已被創建的MvcMovie\View\HelloWorld\Index.cshtml文件:
[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203295055.png)
下圖顯示了已被創建的Index.cshtml文件:
[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203308369.png)
在標簽后面添加以下HTML。
~~~
<p>Hello from our View Template!</p>
完整的*MvcMovie\HelloWorld\Index.cshtml*文件如下所示。
@{
?? ViewBag.Title = "Index";
}
<h2>Index</h2>
<p>Hello from our View Template!</p>
~~~
注:如果您使用的是Internet Explorer 9,您將看不到在上面用黃色高亮標記的<p>Hello from our View Template!</p>,單擊[“兼容性視圖”](http://windows.microsoft.com/en-US/windows7/How-to-use-Compatibility-View-in-Internet-Explorer-9)[按鈕](http://windows.microsoft.com/en-US/windows7/How-to-use-Compatibility-View-in-Internet-Explorer-9)[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203306351.jpg), 在IE瀏覽器中,圖標會從[![clip_image005[1]](https://box.kancloud.cn/2016-08-08_57a81c6651225.jpg "clip_image005[1]")](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203312414.jpg)變為純色的[](http://images.cnblogs.com/cnblogs_com/powertoolsteam/201211/201211061203317398.jpg)圖標。另外,您也可以在Firefox或Chrome查看本教程。
如果您正在使用Visual Studio 2012,在解決方案資源管理器中,右鍵單擊*Index.cshtml*文件,并選擇“ **在頁面檢查器中查看**“。
--------------------------------------------------------------------------------------------------------------------
譯者注:
本系列共9篇文章,翻譯自Asp.Net MVC4 官方教程,由于本系列文章言簡意賅,篇幅適中,從一個示例開始講解,全文最終完成了一個管理影片的小系統,非常適合新手入門Asp.Net MVC4,并由此開始開發工作。9篇文章為:
1. Asp.Net MVC4 入門介紹
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4)
· 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/01/2749906.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/01/2749906.html)
2. 添加一個控制器
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller)
· 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/02/2751015.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/02/2751015.html)
3. 添加一個視圖
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-view](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-view)
· 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/06/2756711.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/06/2756711.html)
4. 添加一個模型
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model)
· 譯文地址:
5. 從控制器訪問數據模型
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-data-from-a-controller](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-data-from-a-controller)
· 譯文地址:
6. 驗證編輯方法和編輯視圖
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-edit-methods-and-edit-view](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-edit-methods-and-edit-view)
· 譯文地址:
7. 給電影表和模型添加新字段
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table)
· 譯文地址:
8. 給數據模型添加校驗器
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-validation-to-the-model](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-validation-to-the-model)
· 譯文地址:
9. 查詢詳細信息和刪除記錄
· 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods)
· 譯文地址:
- 前言
- 入門介紹
- 添加一個控制器
- 添加一個視圖
- 添加一個模型
- 從控制器訪問數據模型
- 驗證編輯方法和編輯視圖
- 給電影表和模型添加新字段
- 給數據模型添加校驗器
- 查詢詳細信息和刪除記錄
- 第三方控件Studio for ASP.NET Wijmo MVC4 工具應用
- ASP.NET MVC 5-開始MVC5之旅
- 控制器
- 視圖
- 將數據從控制器傳遞給視圖
- 添加一個模型
- 創建連接字符串(Connection String)并使用SQL Server LocalDB
- 從控制器訪問數據模型
- 驗證編輯方法(Edit method)和編輯視圖(Edit view)
- 給電影表和模型添加新字段
- 給數據模型添加校驗器
- 查詢Details和Delete方法