Odata 如何利用导航属性?
OData服务(V2)包含多个导航属性,如下所示: 如上所示,Odata 如何利用导航属性?,odata,sapui5,Odata,Sapui5,OData服务(V2)包含多个导航属性,如下所示: 如上所示,到_IClassHeaderVh和到_iclasshvh是导航属性。 请求OData服务的代码: oModel.read(苏里、{ 成功:功能(oData){ }, 错误:Util.batherRorClassNotFound }); 如何通过代码从导航属性获取URL?我可以通过以下对象获得它: oData.to\u IClassVh.\u\u deferred.uri 但我不知道这是否正确。导航属性,顾名思义,是可以导航到相关实
到_IClassHeaderVh
和到_iclasshvh
是导航属性。请求OData服务的代码:
oModel.read(苏里、{
成功:功能(oData){
},
错误:Util.batherRorClassNotFound
});
如何通过代码从导航属性获取URL?我可以通过以下对象获得它:
oData.to\u IClassVh.\u\u deferred.uri
但我不知道这是否正确。导航属性,顾名思义,是可以导航到相关实体类型()的属性。UI5框架也支持此功能,因此应用程序开发人员不必手动提取URL。事实上,您甚至不需要调用
read
。以EDM[1]为例:
客户导航:“命令” 1 订单
导航:“客户” 。。。由此 从以下位置导航:
从以下位置导航:
以下是使用导航属性的示例:
在您的情况下,您可以使用来代替客户
或订单
。UI5随后将相应地为您发送请求。请记住,只有上下文和聚合绑定才能处理发送请求。属性绑定不
如果您想知道XML中的绑定
属性;这只是解决问题的方法之一。如果您需要动态地指定实体键(ID),通常就是这样,那么您必须使用JS中的APIbindElement
。我在这里对键进行硬编码只是为了示例
此外,您还可以添加展开
,它将等待导航属性名称
响应:
下面是一个使用expand的示例:
[1] :“实体数据模型”-OData特定的E/R模型
ClassNum: "ZPM_TEST_01"
ClassNumDescr: "ZPM_TEST_01"
ClassType: "001"
InternalClass: "0000000130"
ValidFrom: Tue Sep 04 2018 02:00:00 GMT+0200 (Central European Summer Time) {}
ValidUntil: Fri Dec 31 9999 01:00:00 GMT+0100 (Central European Standard Time) {}
to_IClassHeaderVh: {__deferred: {…}}
to_IClassVh: {__deferred: {…}}