实体框架6(代码优先) - 复合外键

时间:2018-03-08 20:16:13

标签: c# sql-server entity-framework-6 ef-code-first foreign-keys

我第一次使用Entity Framework(代码优先),我无法弄清楚如何完成特定的外键。

我的代码看起来像这样:

public class Customer
{
    [Key]
    [Index("IX_Customer_Entity", IsUnique = true, Order = 1)]
    public int CustomerID { get; set; }

    [Index("IX_Customer_Entity", IsUnique = true, Order = 2)]
    public EntityType EntityType { get; set; } //1

    public string CustomerName { get; set; }
}

public class Supplier
{
    [Key]
    [Index("IX_Supplier_Entity", IsUnique = true, Order = 1)]
    public int SupplierID { get; set; }

    [Index("IX_Supplier_Entity", IsUnique = true, Order = 2)]
    public EntityType EntityType { get; set; } //2

    public string SupplierName { get; set; }
}

public class Note
{
    [Key]
    public int NoteID { get; set; }

    [Index("IX_Parent", 1)]
    public int ParentID { get; set; }

    [Index("IX_Parent", 2)]
    public EntityType ParentType { get; set; }

    public string Description { get; set; }
}

现在我要创建CustomerNote之间以及SupplierNote之间的关系,但不要使用Note的主键表

SQL中的结果如下所示:

SQL diagram

有人可以告诉我该怎么做吗?

0 个答案:

没有答案