2016-05-13 8 views
3

Web APIメソッドに関するほとんどのコメントは、IHttpActionResultを返すべきだと言います。 Visual Studioでコントローラを追加し、「Entity Frameworkのアクションを持つWeb API 2コントローラ」を選択すると、POST、PUT、およびDELETEの2つのメソッドが入力されました。 IQueryableを使用して、IHttpActionResultの代わりに複数のレコードを返します。どちらが正しいのですか?Web APIメソッド:Return IHttpActionResultまたはIQueryable

 // GET: api/Trades 
 
     public IQueryable<Trade> GetTrades() 
 
     { 
 
      return db.Trades; 
 
     } 
 

 
     // GET: api/Trades/5 
 
     [ResponseType(typeof(Trade))] 
 
     public IHttpActionResult GetTrade(int id) 
 
     { 
 
      Trade trade = db.Trades.Find(id); 
 
      if (trade == null) 
 
      { 
 
       return NotFound(); 
 
      } 
 

 
      return Ok(trade); 
 
     }

答えて

3

どちらが正しいです。 IQueryableの利便性は、あなたには、よく質問することができるということです。

例:WebAPIでODataを使用すると、柔軟性が必要な場合があります。その後、mysite.com/odata/Orders?$filter=OrderID eq 1156のようなあなたのAJAX要求を行うことができます。ここで

は、ODataの上より次のとおりです。http://www.odata.org/

それは、ページネーションをサポートした動的な検索APIのために非常に便利であることが判明しました。

関連する問題