将属性添加到实体框架类

时间:2012-06-28 14:26:49

标签: wpf database entity-framework

对于使用实体框架的我的wpf应用程序,我需要将一个实体属性添加到实体类之一。例如:有很多关系,有两张桌子和一张桌子。

客户:身份证,姓名,地址。 产品:ID,名称

CustomerProduct:CustomerID,ProductID

我正在尝试添加到我的自动生成的实体数据类Cutomer,属性colProducts如下:

    public partial class Customer
{
    public Products  colProducts;
    public Products ColProducts
    {
        get { return colProducts; }
        set 
        {
            colProducts = ???? 
        }
    }

}

但我发现这种关系缺失了。这有什么不对?我如何获得与客户相关的产品。我这样做是为了方便wpf数据绑定。

2 个答案:

答案 0 :(得分:0)

首先,如果数据库中存在这些关联(外键或多对多表),它们将创建这些关联。如果您可以控制数据库,则应该执行此操作。它比手动实体方法简单,并有助于数据库保持有效。

如果您不能或不想,您可以手动创建实体关联。这些步骤from here

  1. 在EF设计器中选择两个实体中的任何一个,然后在右键菜单中选择“添加关联”选项。
  2. 适当地指定每一侧的多重性并创建关联
  3. 选择关联,然后选择“表格映射”选项
  4. 现在选择包含外键列的表,即消息
  5. 在列列表中,它将显示其旁边引用表的主键,选择相应的外键,即我们案例中的ConversationId
  6. 从引用实体中删除外键属性,即消息实体
  7. 中的ConversationId属性

答案 1 :(得分:0)

如果CustomerID和ProductID构成表CustomerProduct的复合主键,则EF应生成正确的多对多关系。