問題

Web API 怎么支持通用的 OData 系統(tǒng)查詢項(xiàng),例如 $select 或 $filter。

 

解決方案

為了在 Web API 中啟用查詢項(xiàng),我們需要在 Action 上使用 EnableQueryAttribute。

如果 Action 沒有返回集合,而是返回單個(gè)對(duì)象的實(shí)例,調(diào)用端仍然可以使用 $expand 和 $select 兩個(gè)查詢語句,要達(dá)到這個(gè)目的,我們必須將返回對(duì)象包裝在 SingleResult<T> 中。集合和單個(gè)對(duì)象實(shí)例作為返回值的例子如訂單 12-7 所示

清單 12-7. 在兩個(gè)路由上啟用查詢語句

復(fù)制代碼
 1 public class PlayersController : ODataController  2  3  {  4  5 private readonly PlayersContext playersDbContext = new PlayersContext();  6  7  [EnableQuery]  8  9 
        		

網(wǎng)友評(píng)論