0

所以我有3节课。例如:

class Project {
    int id
}

class User {
    int id
}

class UserProjectLink {
    int projectId
    int userId
}

我有这种方法是为了避免NULL数据库中的值。然而,实体框架projectId在我的User表上设置了,从而产生了NULL值。(请注意,上面的类不是实际的类)。

我该如何解决这个问题?一个用户只有 1 个项目,一个项目只有 1 个用户。该项目可能还没有用户,在这种情况下,UserProjectLink表中没有一行会告诉我那里还没有用户。

任何想法都可能有用。

4

2 回答 2

0

您所描述的是一个项目是相对于用户的弱实体的设置。这意味着为了一个项目的存在,它必须有一个用户作为它的所有者,并且它不能被任何其他用户引用(即它只有一个所有者)。

所以,你不需要UserProjectLink桌子。

class User {
    int id
}

class UserProject { // or just "Project"
    int projectId
    int userId
}
于 2013-04-15T12:46:45.737 回答
0
class User {
    [Key, ForeginKey("Project")]
    int id
    public Virtual Project Project{get; set;}
}
class Project {
    int id
    public virtual User User {get; set;}
}
于 2013-04-15T12:49:44.487 回答