我正在尝试使用breezejs和angular来查询带有odata的web api服务 我正在获取具有正确属性的元数据
<Property Name="IncidentID" Type="Edm.Int32" Nullable="false" />
<Property Name="Name" Type="Edm.String" />
<Property Name="IncidentType" Type="Edm.Int32" Nullable="false" />
<Property Name="Description" Type="Edm.String" />
我发送查询时
var query = breeze.EntityQuery
.from("Incidents").where("IncidentType", "lt", 60);
我收到错误声称属性IncidentType不存在
答案 0 :(得分:0)
如果没有更多信息,我不确定,但是如果你可能有一个namingConvention,可能是'camelCase',那么值得一试。如果是,则“IncidentType”将变为“incidentType”。即:
var query = breeze.EntityQuery
.from("Incidents").where("incidentType", "lt", 60);
另一种可能是您的资源名称“事件”不正确。
确定此类问题的最佳方法是更密切地查看客户端元数据。为此使用MetadataStore.getEntityType方法。
// assuming an entityType of "Incident" is associated with the "Incidents" resource name.
var et = myEntityManager.metadataStore.getEntityType("Incident");
var dataProperties = et.dataProperties; // check the names on each of these.
答案 1 :(得分:0)
我发现了问题 - 设置了骆驼命名