我想这可以在某处覆盖,但我无法找到。猜猜我没有使用正确的搜索字词。
基本上我有一个我定义为POCO的多对多表。如果你愿意的话,你也可以将它看作一个有两对一关系的表。
一端有一个用户表和另一端的分区表。但是,每个用户分组组合可以有多个关系,每年一个。因此在关联表中将有一个年份的int列,主键将是UserId fk,DivisionId fk和Year的复合。
我不确定如何在EF 4.1 Code First中执行此操作。我希望有一种DataAnnotation方式和一种FluentApi方式。
如果你能指出我的教程,我真的很高兴。
用户:
public class User
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
//some other properties
public virtual ICollection<DivisionService> Services { get; set; }
}
司:
public class Division
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int DivisionId { get; set; }
//some other properties
public virtual ICollection<DivisionService> Services { get; set; }
}
加入/主表:
public class DivisionService
{
public int Year { get; set; } //this and the two foreign keys should be composite Primary Key
//some other properties
public virtual User User { get; set; }
public virtual Division Division { get; set; }
}