OData.org上的可写OData V2服务:";产品“;从展开的实体中不可见

OData.org上的可写OData V2服务:";产品“;从展开的实体中不可见,odata,sapui5,Odata,Sapui5,使用这个可写(不是Northwind),我将单个类别实体绑定到容器控件,同时扩展到实体集产品。在container控件中,我有一个列表,该列表具有一个聚合绑定,绑定到带有来自expand的产品的项 <Page binding="{ path: 'odataModel>/Categories(1)', parameters: { expand: 'Products' } }"> <List items="{odataModel>Products

使用这个可写(不是Northwind),我将单个类别实体绑定到容器控件,同时扩展到实体集产品。在container控件中,我有一个列表,该列表具有一个聚合绑定,绑定到带有来自expand的产品的项

<Page binding="{
  path: 'odataModel>/Categories(1)',
  parameters: {
    expand: 'Products'
  }
}">
  <List items="{odataModel>Products}">
    <StandardListItem title="{odataModel>Name}" />
  </List>
</Page>

问题是列表中没有显示产品的名称,尽管我得到了正确的集合长度。而且也没有错误消息

下面是实现示例OData服务的示例:

奇怪的是,每个项目的绑定路径都报告为
“/[object object]”
,而不是类似于
“/Products(1)”


如果,则产品的属性可见

  • 相反,我对只可读的做了相同的操作(但我需要的是一个可写的服务)
  • 我直接将产品绑定到列表,而不绑定父元素
  • 我删除了一个产品(如手动
    “/Products(0)”
    ,如plunker示例所示)。之后,产品名称可见
这个示例服务有什么问题?我是否必须专门根据该服务配置我的ODataModel?只是服务工作不正常吗

我还想用不同的实体集替换产品,但所有其他实体集(供应商和类别)只导航到产品


是否还有其他可自由写入的示例OData V2服务可以测试?

我发现OData.svc上的结果结构与服务中预期的不一样。结果结构缺少“results”参数。
如果您看到northwind服务,它具有“results”参数

从1.52.1版开始,ODataModel(v2)还可以处理中断的服务实现:


例如,缺少
结果
参数作为。

感谢您指出这一点!事实上,这似乎是主要问题。我在模拟服务器中使用完全相同的模拟数据运行了该服务,但没有您所说的
“results”
属性。只有在那时,UI5才抱怨“实体集[…]的模拟数据格式无效”。将模拟数据包装到
“results”
属性中后,一切正常。因此,我试图通过将
inlinepeat
添加为
countMode
来强制服务添加
“结果”
,但这仅适用于作为集合的父实体,而不适用于子实体(产品)。Northwind有
“结果”
,即使对于子实体也是如此。对于其他读者来说,这是与较新版本添加相关的github问题:我投票关闭这个问题,因为由于框架提供的修复,该问题无法再重现。看见