我有Customer
和Order
实体,在其中定义了导航,使得Customer.HasOrders
和Order.Customer
我还创建了一个Projected属性Customer.RegistredAddress
,该属性是在下面定义的模型中构建的。
entity.OwnsOne<Address>(e => e.RegistredAddress,
sa =>
{
sa.Property(p => p.AddressLine1).HasColumnName("ADDRESS1");
sa.Property(p => p.City).HasColumnName("CITY");
sa.Property(p => p.RegionCode).HasColumnName("STATE");
sa.Property(p => p.CountryCode).HasColumnName("COUNTRY");
sa.Property(p => p.PostalCode).HasColumnName("POSTAL_CODE");
});
现在,当我使用以下uri查询客户时
http://myserver:5002/odata/v1/customers?$filter=CustomerId eq 10000886
按预期方式在RegistredAddress
字段中获取数据,但是当我尝试获取Order
并尝试使用诸如Customer
之类的s扩展/orders?$expand=Customer&$top=3
时,我看到它为扩展实体上的Null
字段返回了Customer.RegistredAddress
。
问候 基兰