【发布时间】:2016-09-07 08:34:59
【问题描述】:
以下是我的数据库架构,三个实体:
加载
- ID_Load
- 发件人
- 到
- 出价[]
出价
- ID_Bid
- ID_Load
- 金额
- 加载
- 订购
订购
- ID_Order
- 状态
- 金额
- 出价
- 加载
加载和投标:一对多 -- 加载可以接收多个投标
订单和出价:一对一 -- 单个出价将与订单对应
订单和加载:一对一 -- 一个订单只能有一个出价
正如您在上面看到的,我在订单实体中没有 ID_Load 或 ID_Bid 属性,因为 EF 会在数据库中自动生成这些属性,因此这两个字段的属性不会添加到订单实体中
我目前在我的项目中使用带有 Code First 的 Repository 模式。
现在我想通过 ID_Load/ID_Bid 获取订单信息(因为 Bid-Order 和 Load-Order 表是一对一的关系)
我不想在应用程序中运行任何 SP 或 Select 查询,但在执行此操作时遇到问题。
如果我运行 SQL,我将不得不编写以下查询:
从 ID_Load = 123 的订单中选择 *
或者
从 ID_Bid = 123 的订单中选择 *
在这种情况下,EF/存储库模式中的替代方案是什么。
谁能帮帮我。
谢谢,
【问题讨论】:
标签: entity-framework relationship repository-pattern one-to-one