0

我正在使用支持 $expand 和微风 1.3.5 的 Microsoft WebAPI OData nightly 来查询数据

当我使用轻风查询实体时:通过轻风.EntityQuery.from("Incidents").where("IncidentID", "eq", 1).expand("IncidentComments");

线上的电话是 GET /odata/Incidents?$filter=IncidentID%20eq%201&$expand=IncidentComments

结果通过 IncidentComments 集合从服务器正确返回,但是当我查看从查询中重新调整的实体时,我正确地获得了实体,但没有 NavigtaionProperty(IncidentComments),当我查看事件实体上的 metadataStore 时,我不能仅在元数据中查看任何 nvigationProperties 数据属性

当我查看从服务器返回的 odata 元数据 ($metadata) 时,我可以看到导航属性在那里:

<EntityType Name="Incident">
    <Key>
      <PropertyRef Name="IncidentID" />
    </Key>
    <Property Name="IncidentID" Type="Edm.Int32" Nullable="false" />
    <Property Name="IncidentType" Type="Edm.Int32" Nullable="false" />
    <Property Name="Name" Type="Edm.String" />
    <NavigationProperty Name="IncidentComments" Relationship="Stabilis.Situator.OpServerTypes.Stabilis_Situator_OpServerTypes_Incident_IncidentComments_Stabilis_Situator_OpServerTypes_IncidentComment_IncidentCommentsPartner" ToRole="IncidentComments" FromRole="IncidentCommentsPartner" />

从 webapi 返回的元数据有问题吗?

4

1 回答 1

0

是的,来自 Web API OData 的元数据有问题。它缺少支持这些导航的外键!!!

WCF OData 元数据提供 FK 信息……这就是 Breeze 使用这种 OData 源的原因。但在撰写本文时,Web API OData 元数据中缺少 FK 信息。我们正在与团队讨论这个问题。

我们希望有一些解决方案……也许是一种解决方法,您可以在其中告诉 Breeze FK 属性是什么。我们没有这项工作的时间表。

请记住:这些是您正在使用的预发布 Microsoft 位。

于 2013-06-08T04:39:36.977 回答