1. 程式人生 > >asp.net mvc4 webapi request獲取引數

asp.net mvc4 webapi request獲取引數

來園很長時間,不擅長交際的我,一直沒有裝飾家園,最近用mvc4中的WEBAPI,發現接收引數不是很方便,跟傳統的request.querystring和request.form有很大區別,在網上搜了一大圈,各種方案都有,但不是太詳細,於是跟蹤Action中的變數,仔細檢視,最後發現瞭解決方案,下面是程式碼:

    
1  public void Post([FromBody]string value)2         {3             HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext
"];//獲取傳統context4             HttpRequestBase request = context.Request;//定義傳統request物件5             string name = request.Form["name"];6 7         }
     

WEBAPI中的Request是HttpRequestMessage型別,不能像Web傳統那樣有querystring和from 方法接收引數,而傳統的HttpReqest的基類是HttpReqestBase

 

所以這裡我們就直接使用(HttpContextBase)Request.Properties["MS_HttpContext"]