OData服务数据绑定

OData service data binding

我很难显示来自 OData 模型的数据。

这是模型声明:

var oModel = new sap.ui.model.odata.ODataModel("northwind/V2/(S(ql0iexfh2tyudc5p4qhx5gdf))/OData/OData.svc");
sap.ui.getCore().setModel(oModel, "odata");

我有一个 Northwind OData 服务的目的地,路径为“/northwind”。

这是我的列表声明:

var oResultsList = new sap.m.List(); 
var oListTemplate = new sap.m.StandardListItem({
    path: "odata>/Categories",
    title: "{odata>name}"
});
oResultsList.bindAggregation("items", "/", oListTemplate);

但是我得到的是空列表。

如果我是正确的,我有一个到该服务的连接,因为我可以获取并查看该服务的元数据对象。

我的问题隐藏在哪里?

您的绑定似乎有误,例如属性 应该是 CategoryName 并且项目聚合需要与实体集绑定。

var oListTemplate = new sap.m.StandardListItem({
    description: "{odata>Description}",
    title: "{odata>CategoryName}"
});
oResultsList.bindAggregation("items", "odata>/Categories", oListTemplate);