文章目錄
- 一、建立Controller
- 二、建立View
- 三、編輯Controller、View完成一個簡單的頁面傳值
本章節主要介紹如何利用ASP.NET MVC編寫自己想要的頁面。具體過程如下所示(由於目前CSDN禁止上傳圖片,所以只能去網上拷貝該部分,所有代碼測試通過,請大家放心使用)。
一、建立Controller
滑鼠右擊解決方案下的Controllers檔案夾->選擇添加->選擇Controller選項,如所示:
然後會出現一個對話方塊,如所示:
我們可以任意取名,在此我們取名RocketController。
則在Controller檔案夾下面多了個檔案為RocketController.cs,預設產生的程式碼為:
using System;<br />using System.Collections.Generic;<br />using System.Linq;<br />using System.Web;<br />using System.Web.Mvc;<br />using System.Web.Mvc.Ajax;</p><p>namespace MovieApp.Controllers<br />{<br /> public class RocketController : Controller<br /> {<br /> //<br /> // GET: /Rocket/</p><p> public ActionResult Index()<br /> {<br /> return View();<br /> }</p><p> }<br />}<br />
二、建立View
當然,除了Controller我們還要建個View,先在Views中建個Rocket檔案夾,然後我們要在其中建個Index.aspx。
不過除此之外ASP.NET MVC還為我們提供了一種建立View的捷徑。在對應的Controller的Action中點右鍵,選擇Add View。本文採用後者。具體如所示:
之後彈出一個對話方塊,如所示:
確定好View檔案名稱字及母片檔案後點Add就建好了一個View檔案。Index.aspx的預設代碼為:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %></p><p><asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"><br />Index<br /></asp:Content></p><p><asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"></p><p> <h2>Index</h2></p><p></asp:Content>
三、編輯Controller、View完成一個簡單的頁面傳值
我們將RocketController.cs的代碼修改為:
using System;<br />using System.Collections.Generic;<br />using System.Linq;<br />using System.Web;<br />using System.Web.Mvc;<br />using System.Web.Mvc.Ajax;</p><p>namespace MovieApp.Controllers<br />{<br /> public class RocketController : Controller<br /> {<br /> //<br /> // GET: /Rocket/</p><p> public ActionResult Index(string id)<br /> {<br /> ViewData["chsword"] = id;<br /> return View();<br /> }</p><p> }<br />}<br />
而Views/Rocket/Index.aspx的代碼修改為:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %></p><p><asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"><br />Index<br /></asp:Content></p><p><asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"></p><p> <%=ViewData["chsword"]%></p><p></asp:Content><br />
下面我們來訪問/Rocket/Index/HellowEice,可以看到如下頁面:
這樣我們就將一個值從Url傳到Controller,又從Controller傳到View顯示出來。由上面程式段可以看出Action的參數string id用於接收{Controller}/{Action}/{id}的ID部分。ViewData是一個頁面間的IDictionary用於Controller向View傳遞資料。這樣View與Controller就可以協作完成顯示頁面與邏輯處理的工作了。