Pat*_*lvé 4 entity-framework odata asp.net-web-api
我开始使用OData和Entity Framework.
我创建了一个暴露客户的控制器.在模型(edmx)中,只有一个实体(Customer),一切正常(数据正在呈现).
现在,当我添加第二个实体(订单)(从数据库更新模型,选择订单)时,会自动设置1到多个(1个客户到多个订单).
我什么都不做,当我编译/运行控制器时,我收到此错误:
Line 23:         builder.EntitySet(Of Customer)("Customers")
Line 24:         Return builder.GetEdmModel()  --> Exception Here
Line 25: 
Line 26:     End Function
复杂类型"WebTools.Order"通过属性"Customer"引用实体类型"WebTools.Customer".
如果我删除订单实体,它可以工作.
我不确定问题是否与方程式的OData/WebAPI部分或"实体框架"的"配置"有关.
Rag*_*nti 15
我假设模型构建器无法确定实体类型Order的键属性.您可以通过几种方式帮助模型构建器,
builder.EntitySet<Order>("orders");.这会添加新的实体集"订单",并且还具有将"订单"类型标记为实体类型的效果.您还必须指定"订单"的关键属性.
使用属性标记"订单"类型的关键属性(或属性)[Key].
如果你讨厌属性并喜欢在代码中执行它,你可以这样做, builder.EntitySet<Order>("orders").EntityType.HasKey(o => order.KeyProperty);
| 归档时间: | 
 | 
| 查看次数: | 7998 次 | 
| 最近记录: |