在OData协议中,有一种方法可以推迟表示导航属性(即指向特定资源或集合的链接),这样服务器就不会向客户端返回额外的数据。
我的问题是,我可以为常规属性做同样的事情吗?我有一个数据结构,它具有一个属性,使服务器需要很长时间来计算,我希望客户端默认不接收该值。
该属性在逻辑上是实体的一部分,不是导航属性。在OData文档的任何地方,我看过延迟内容,它关于推迟导航属性。想知道是否可以推迟常规财产,如果没有,我有什么选择。
答案 0 :(得分:1)
您可以在客户端上使用投影,并且您只会收到投影属性。 但是您不会获得指向非投影属性的链接,这仅适用于导航属性。
希望这有帮助,
Monica Frintu
答案 1 :(得分:0)
我认为这不可能。
或者,您可以将计算出的属性隔离到另一个实体中(例如,将MyEntity撕成MyEntity和MyEntityCalculations)。然后,您可以将原始实体的ID重用为第二个实体的ID。
因此,如果你有一个ID = 32的实例myEntity,那么你可以有一个实例myEntityCalculations,同样ID = 32,然后只包含计算出来的属性。