1:1 OData 引用约束,使用错误的键



我有两个实体CustomerAddress这是一对一的关系。客户有ID, AddressId, Name,地址有ID and AddressName。每当我调用entityType.AddUnidirectionalNavigation(propertyOnEntity, propertyOnTargetEntity);元数据关联时,都会出现:

<Association Name="K2SmartObjects_Customer_Address_K2SmartObjects_Address_Customer">
<End Type="K2SmartObjects.Address" Role="Address" Multiplicity="0..1"/>
<End Type="K2SmartObjects.Customer" Role="Customer" Multiplicity="0..1"/>
<ReferentialConstraint>
<Principal Role="Customer">
<PropertyRef Name="ID"/>
</Principal>
<Dependent Role="Address">
<PropertyRef Name="ID"/>
</Dependent>
</ReferentialConstraint>
</Association>

主要角色不应该AddressIdPropertyRef吗?

ID不应该是依赖Address类型中的外键吗?您不会通过 AddressId 引用Customer。因此,我认为ID作为主要财产没有问题。供您参考,请参阅此处和此处。

最新更新