2012-06-28 30 views
0

我正在擴展ActionResult類。在ExecuteResult方法中,我想檢查該操作是否爲GETPOST,但在ControllerContext類中似乎沒有屬性,這會讓我這樣做。有誰知道如何檢查ControllerContext的請求類型?從ActionResult獲取請求類型

public override void ExecuteResult(ControllerContext context) 
{ 
    //See if the request was POST 
    if (context.HttpContext.Request.?) 
    { 
     DoStuff(); 
    } 

    DoOtherStuff(); 
} 
+1

也許你可以做一些類似[這]東西(http://stackoverflow.com/問題/ 1169490 /升C-ASP淨MVC-發現-OUT-是否-GET-或-後進行調用的上控制器-ACTI)? – MilkyWayJoe

+0

@MilkyWayJoe是的。 HttpMethod被隱藏在ControllerContext類中。一定忽略了它。 –

回答

0

試試這個:

public HttpVerbs RequestHttpVerb(ControllerContext context) 
    { 
     return (HttpVerbs)Enum.Parse(typeof(HttpVerbs), context.HttpContext.Request.HttpMethod, true); 
    } 

    public override void ExecuteResult(ControllerContext context) 
    { 
     if (this.RequestHttpVerb(context) == HttpVerbs.Post) 
     { 

     } 
    }