2014-01-08 39 views
0

我採取類似ODataServiceSample項目多少能在OData服務

這是說,你可以從客戶端請求嵌套實體使用嵌套的實體類ProductFamilies(1)/產品:

ProductFamiliesController : EntitySetController<ProductFamily, int> 
{ 
    /// <summary> 
    /// Support for /ProductFamilies(1)/Products 
    /// </summary> 
    [Queryable] 
    public IQueryable<Product> GetProducts([FromODataUri] int key) 
    { 
     return _db.ProductFamilies.Where(pf => pf.ID == key).SelectMany(pf => pf.Products); 
    } 
} 

怎麼做/ ProductFamilies(1)/產品(1)/ BatchNumbers服務器端支持?

回答

0

您需要另一個EntitySetController產品和做完全一樣的,你沒有爲ProductFamily實體集,即:

ProductsController : EntitySetController<Product, int> 
{ 
    /// <summary> 
    /// Support for /Products(1)/BatchNumbers 
    /// </summary> 
    [Queryable] 
    public IQueryable<BatchNumber> GetBatchNumberss([FromODataUri] int key) 
    { 
     return _db.Products.Where(p => p.ID == key).SelectMany(p => p.BatchNumbers); 
    } 
}