位置:首頁 > Web開發 > MVC框架教學 > MVC框架 - 控製器

MVC框架 - 控製器

Asp.net MVC控製器負責控製應用程序的執行流程。當你發出請求(指請求頁)在MVC應用程序中,控製器負責返回響應這一請求。控製器可以有一個或多個動作。控製器的動作可以返回不同類型的操作結果到一個特定的請求。

控製器負責控製應用邏輯和充當視圖和模型之間的協調器。控製器通過視圖接收來自用戶的輸入,然後模型處理用戶的數據和傳遞結果返回給視圖。

創建一個控製器

要創建一個控製器,在MVC應用程序中創建一個空的MVC應用程序,然後右鍵單擊控製器(Controller)文件夾,然後選擇菜單選項Add->Controller。選擇之後顯示添加控製器對話框。命名為控製器DemoController。

控製器類文件將這樣創建:

mvc_new_controller

創建一個帶有Icontroller的控製器

在MVC框架,控製器類必須實現從System.Web.Mvc命名空間中的IController接口。

public interface IController 
{
void Execute(RequestContext requestContext);
}

這是一個非常簡單的接口。唯一的方法,執行,在調用時的請求是針對控製器類。所述MVC框架知道哪個控製器類已被定位於一個請求,通過讀取路由數據生成控製器屬性的值。

add_new_contoller_class

添加一個新的類文件,並將其命名為DemoCustomController。現在修改這個類來繼承IController接口。

contoller_using_icontroller

複製下麵的代碼到這一個類中:

public class DemoCustomController:IController
    {
        public void Execute(System.Web.Routing.RequestContext requestContext)
        {
            var controller = (string)requestContext.RouteData.Values["controller"];
            var action = (string)requestContext.RouteData.Values["action"];
            requestContext.HttpContext.Response.Write(
            string.Format("Controller: {0}, Action: {1}", controller, action));
        }
    }

現在,當運行應用程序,會看到這樣的結果:

call_demo_controller