使用ODataController
在一对多对多或多对多的关系中,我如何获得子实体的子女。
例如,在OData 4 Sample Service中:
我需要知道如何实现:
public class PeopleController : ODataController
{
...
[ODataRoute("People({key})/Trips/PlanItems)]
public IQuerable<PlanItems> GetPlanItems([FromODataUri] string key])
}
这意味着我想检索一个人的所有PlanItem。
不幸的是,所有方法仅实现[ODataRoute("People({key})/Trips({tripId})/PlanItems)]
答案 0 :(得分:0)
URL约定.../People(key)/Trips/PlanItems
无效,如果您尝试“请求URI无效,您可以从错误消息中看到。由于段'Trips'指的是一个集合,这必须是最后一个段在请求URI中,或者必须后跟一个可以绑定到它的函数或动作,否则所有中间段都必须引用单个资源。“因此,另一种方法是使用网址.../People(key)/Trips?$expand=PlanItems