一、練習項目:
http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4
微軟的MVC4 入門教程。
二、知識點:
1.項目類型:
新建的是一個Internet MVC 4項目,有自帶的基本框架,包含默認模板和一個登錄注冊系統,不過只是空架子,沒有數據和數據操作;
2.添加 Controller
在基礎框架中,將Controller統一放在根目錄的Controller文件夾下.
默認項目中有兩個Controller:AccountController.cs和HomeController.cs,分別控制賬戶系統和主頁系統
新添的Controller就和他們放在一起。HelloWorldController.cs:
public class HelloWorldController : Controller { // // GET: /HelloWorld/ public ActionResult Index() { //return "這是我的<b>默認</b> action"; return View(); } // // GET: /HelloWorld/Welcome/ public string Welcome(string name,int numTimes=1) { //return "這是Welcome Action 方法...."; return HttpUtility.HtmlEncode("Hello " + name + ",NumTimes is:" + numTimes); } }
一個Controller可以對應多個頁面呈現,每個Controller中的方法都可以對應一個頁面,訪問URL路徑如下
/[Controller]/[ActionName]/[Parameters]
再此遇到兩種不同返回值的方法:
1)string:
直接返回字符串,這種方法對應的網頁中只包含返回的字符串顯示;
2)ActionResult:
這種返回值的action, return 一個View()方法,可以為此action添加View,在其中設置具體頁面格式和內容。
3. 添加 View
直接在HelloWorldController的Index()方法中點擊右鍵,添加視圖,默認就會被命名為Index; 生成的index.cshtml會存放在/Views/HelloWorld中。
觀察可知,每個Controller在/Views下都有一個同類名的文件夾,存放該Controller所控制的View。
【默認模板】:/Shared/_Layout.cshtml
新建視圖時,如果沒有做任何操作,會默認添加母版_Layout.cshtml,也可以選擇其它布局頁;
如果不想在這個View中使用任何模板,應該取消“使用布局或母版頁”復選框。
【內容占位符】: @RenderBody()
在_Layout.cshtml中,@RenderBody()相當於是內容占位符,其它以此為模板的View中內容,會填充到@RenderBody()方法所做位置。
【模板和內容頁傳值】:@ViewBag
ViewBag類在_Layout.cshtml模板和View之間進行傳遞值,如:@ViewBag.Title
初學MS 的MVC 4,參照微軟www.asp.net/mvc 中的入門項目,寫個MVC 4的入門系列,以供復習和分享。
微軟入門項目:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4
【目錄】
1.[.NET MVC4 入門系列01]Helloworld MVC 4 第一個MVC4程序
2. [.NET MVC4 入門系列02]MVC Movie 為項目添加Model
3. [.NET MVC4 入門系列03]使用Controller訪問Model中數據
4. [.NET MVC4 入門系列04]Controller和View間交互原理
5. .NET MVC4 入門系列05]添加自定義查詢頁Search
6. [.NET MVC4 入門系列06] 在Movie Model和表中添加新字段(Code First Migrations)
7. [.NET MVC4 入門系列07] 在Model模型模塊中添加驗證