2016年6月6日 星期一

MVC 2.0 心得 (一) 新建 MVC - 第一支 MVC 項目

ASP.NET MVC 的網址路徑與文件路徑的對應關係是通過網址路由來定義的。我們可以從項目中的 Global.asax.cs 裡看到一個 RegisterRoutes() 方法。

IgnoreRoute
設定 *.axd 等格式的網址路徑不通過 ASP.NET MVC 執行
MapRoute
MapRoute() 方法是定義 Asp.net MVC 網址路由最主要的方式。
每一個路由都定義了以下 3 個參數
1. 路由名稱。
2. 對網址路徑如何對應到控制器、動作與路由值的設定
3. 控制器、動作和其他路由值的默認值。
當我們在瀏覽器輸入 "http://localhost" 來訪問網站首頁時,通過 Routing 的對應,由於網址路徑部分沒有任何內容,所以會使用 MapRoute() 方法的第 3 個參數所設定的默值來代替,因此會先進入 "Controllers" 目錄,找到Home 控制器,然後再找到 Index 方法並執行。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication2.Controllers
{
    [HandleError]
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewData["Message"] = "歡迎使用 ASP.NET MVC!";

            return View();
        }

        public ActionResult About()
        {
            return View();
        }
    }
}
Controller 類別必須符合以下條件
  1. 類別名稱一定要以”Controller”結尾
  2. 繼承 Controller 或實現 IController
  3. 類別中必須包含”ActionResult”(稱為 Action)的公開方法
View() 是繼承 ActionResult 類別,會回傳一個 ViewResult,代表從 HomeController 中告知要回傳 Views\Home\Index.aspx 或 Views\Home\About.aspx 這兩個網頁。
 
按 F5 就完成第一支 MVC

沒有留言:

張貼留言