鍍金池/ 教程/ Java/ MVC框架 - 控制器
MVC框架 - 異常處理
MVC框架架構(gòu)
MVC框架 ASP.NET表單
MVC框架 - 高級示例
MVC框架 - 捆綁
MVC框架 - 文件夾
MVC框架 - 控制器
MVC框架 - 模型
MVC框架 - 視圖
MVC框架 - 路由引擎
MVC框架 - 第一個應用程序
MVC框架 - AJAX支持
MVC框架教程
MVC框架 - 布局
MVC框架 - 動作過濾器

MVC框架 - 控制器

Asp.net MVC控制器負責控制應用程序的執(zhí)行流程。當你發(fā)出請求(指請求頁)在MVC應用程序中,控制器負責返回響應這一請求??刂破骺梢杂幸粋€或多個動作??刂破鞯膭幼骺梢苑祷夭煌愋偷牟僮鹘Y(jié)果到一個特定的請求。

控制器負責控制應用邏輯和充當視圖和模型之間的協(xié)調(diào)器。控制器通過視圖接收來自用戶的輸入,然后模型處理用戶的數(shù)據(jù)和傳遞結(jié)果返回給視圖。

創(chuàng)建一個控制器

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

控制器類文件將這樣創(chuàng)建:

mvc_new_controller

創(chuàng)建一個帶有Icontroller的控制器

在MVC框架,控制器類必須實現(xiàn)從System.Web.Mvc命名空間中的IController接口。

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

這是一個非常簡單的接口。唯一的方法,執(zhí)行,在調(diào)用時的請求是針對控制器類。所述MVC框架知道哪個控制器類已被定位于一個請求,通過讀取路由數(shù)據(jù)生成控制器屬性的值。

add_new_contoller_class

添加一個新的類文件,并將其命名為DemoCustomController。現(xiàn)在修改這個類來繼承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));
        }
    }

現(xiàn)在,當運行應用程序,會看到這樣的結(jié)果:

call_demo_controller