相关疑难解决方法(0)

从.NET OData 4 Client调用嵌套的Expand()的正确方法

问题

在Web API上的OData 4服务中,从.NET客户端调用嵌套$ expand的正确方法是什么?我们正在使用OData客户端生成器.回到之前使用OData 3服务的WCF数据服务,我们可以调用.Expand("Customers/Orders").在使用OData 4的Web API中,我们不能再这样做,并且如果您尝试,则会收到以下内容.Expand("Customers/Orders"):

URI中指定的查询无效.找到遍历多个导航>属性的路径.请重新调整查询,使每个展开路径仅包含类型>段和导航属性.

解决方法

我们可以通过调用expand来解决这个问题:.Expand("Customers($expand=Orders)").在非嵌套的$ expand场景中,我喜欢lambda支持.Expand(d => d.Customers)..NET OData 4客户端是否有正确的方法来调用嵌套的扩展而没有不幸的魔术字符串.Expand("Customers($expand=Orders)")?如果没有,是否有一个更清洁的字符串模式,如"客户/订单",这将有效吗?谢谢.

astoria wcf-data-services odata asp.net-web-api wcf-data-services-client

8
推荐指数
1
解决办法
5669
查看次数