所以我有3节课。例如:
class Project {
int id
}
class User {
int id
}
class UserProjectLink {
int projectId
int userId
}
我有这种方法,以避免数据库中的NULL
值。
然而,实体框架会在projectId
表上设置User
,从而产生NULL
值。 (请注意,上面的类不是实际的类。)
我该如何解决这个问题?用户只有1个项目,项目只有1个用户。该项目可能还没有用户,在这种情况下,UserProjectLink
表中没有一行会告诉我那里还没有用户。
任何想法都可能有用。
答案 0 :(得分:0)
您所描述的是项目是与用户相关的弱实体的设置。这意味着,为了使项目存在,必须具有用户作为其所有者,并且任何其他用户都不能引用它(即它具有单个所有者)。
因此,您不需要UserProjectLink
表。
class User {
int id
}
class UserProject { // or just "Project"
int projectId
int userId
}
答案 1 :(得分:0)
class User {
[Key, ForeginKey("Project")]
int id
public Virtual Project Project{get; set;}
}
class Project {
int id
public virtual User User {get; set;}
}