0

取以下伪代码数据库

table Foo
{
    FooID int not null,
    name varchar not null
}

table Bar
{
    BarID int not null,
    name varchar not null
}

table Waa
{
    WaaID int not null,
    name varchar not null
}

table Link
{
    LinkID int not null,
    FooID int null,
    BarID int null,
    WaaID int null,
    Description varchar not null
}

Link 表的目的是允许我在一个表中将实体链接在一起,而无需多个Foo_Bar_LinkFoo_Waa_Link表。

我在 EntityFramework v5 中对这个数据库进行建模。因此,我希望能够在 and 之间指定一对多关系FooLink以便我可以获得与给定 Foo 关联的所有链接。

问题
EntityFramework Designer 只允许在外键不为空的情况下存在一对多关系。我希望 Foo 有一个导航属性Associations,它可以获取所有Association带有FooID = Foo.FooID. 作为说明,我正在使用设计器。

4

1 回答 1

3

EF 并非旨在支持像您这样的不寻常模型。我知道的唯一方法是插入“空”表示行,例如 id 等于-1. 在业务逻辑或 DTO 中实现“聪明”的 getter 和 setter。

于 2013-08-13T04:19:34.900 回答