我看到大多数关于 Web API 方法的评论都说它们应该返回 IHttpActionResult。当我在 Visual Studio 中添加控制器并选择 "Web API 2 Controller With Action For Entity Framework" 时,它会输入这两个方法(以及 POST、PUT 和 DELETE)。它使用 IQueryable 来返回多个记录,而不是 IHttpActionResult。哪种方法是正确的,为什么?
// 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);
}