2013-07-01 38 views
0

我在WebApi請求中使用IQueryable功能來傳遞搜索結果。我已將我的代碼關閉this article。是否有可能不僅在父對象上使用IQueryable,而且在子對象的集合上使用IQueryable?在WebApi中將IQueryable過濾器應用於父級和子級集合

例如,使用本文中的示例,可以返回產品的查詢。如果Product類具有Categories的集合,那麼可以在Product上執行IQueryable操作,它是Categories的集合?類似的產品?$濾芯的Category.Name EQ '玩具' 和價格下10

public class Product 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public float Price { get; set; } 
    public IEnumerable<Category> Categories { get; set; } 
} 

public class Category 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public string Description { get; set; } 
} 

回答

1

它應該工作。嘗試使用URL這樣反而雖然:

Products?$filter=Categories/any(category: category/Name eq 'Toys') and Price lt 10 

這基本上說「找到所有的產品具有名稱‘玩具’,價格低於10的至少一個類別」。

+0

Rockin,感謝一羣爲我工作的人。 – likestoski

相關問題