OData.org上的可写OData V2服务:";产品“;从展开的实体中不可见
使用这个可写(不是Northwind),我将单个类别实体绑定到容器控件,同时扩展到实体集产品。在container控件中,我有一个列表,该列表具有一个聚合绑定,绑定到带有来自expand的产品的项OData.org上的可写OData V2服务:";产品“;从展开的实体中不可见,odata,sapui5,Odata,Sapui5,使用这个可写(不是Northwind),我将单个类别实体绑定到容器控件,同时扩展到实体集产品。在container控件中,我有一个列表,该列表具有一个聚合绑定,绑定到带有来自expand的产品的项 <Page binding="{ path: 'odataModel>/Categories(1)', parameters: { expand: 'Products' } }"> <List items="{odataModel>Products
<Page binding="{
path: 'odataModel>/Categories(1)',
parameters: {
expand: 'Products'
}
}">
<List items="{odataModel>Products}">
<StandardListItem title="{odataModel>Name}" />
</List>
</Page>
问题是列表中没有显示产品的名称,尽管我得到了正确的集合长度。而且也没有错误消息
下面是实现示例OData服务的示例:
奇怪的是,每个项目的绑定路径都报告为“/[object object]”
,而不是类似于“/Products(1)”
如果,则产品的属性可见
- 相反,我对只可读的做了相同的操作(但我需要的是一个可写的服务)
- 我直接将产品绑定到列表,而不绑定父元素
- 我删除了一个产品(如手动
,如plunker示例所示)。之后,产品名称可见“/Products(0)”
是否还有其他可自由写入的示例OData V2服务可以测试?我发现OData.svc上的结果结构与服务中预期的不一样。结果结构缺少“results”参数。
如果您看到northwind服务,它具有“results”参数 从1.52.1版开始,ODataModel(v2)还可以处理中断的服务实现:
例如,缺少
结果
参数作为。感谢您指出这一点!事实上,这似乎是主要问题。我在模拟服务器中使用完全相同的模拟数据运行了该服务,但没有您所说的“results”
属性。只有在那时,UI5才抱怨“实体集[…]的模拟数据格式无效”。将模拟数据包装到“results”
属性中后,一切正常。因此,我试图通过将inlinepeat
添加为countMode
来强制服务添加“结果”
,但这仅适用于作为集合的父实体,而不适用于子实体(产品)。Northwind有“结果”
,即使对于子实体也是如此。对于其他读者来说,这是与较新版本添加相关的github问题:我投票关闭这个问题,因为由于框架提供的修复,该问题无法再重现。看见