我在 MVC3 的实体框架 4.3 代码优先模型中有以下类:
public class Film
{
public Int32 ID { get; set; }
[Column("FilmName"), MinLength(2), MaxLength(100)]
[Required(ErrorMessage = "Please enter a name")]
public String Name { get; set; }
public Model.Cast Cast { get; set; }
}
public class Actor
{
public Int32 ID { get; set; }
[MaxLength(75)]
public String Name { get; set; }
}
[Table("Cast")]
public class Cast
{
public Actor Actor { get; set; }
[MaxLength(500)]
public String Role { get; set; }
public virtual Film Film { get; set; }
}
我想要一个如下的表格布局:
Films:
ID PK
Name
Cast:
FilmID PK FK
ActorID PK FK
Role
Actors:
ID PK
Name
如何创建 Cast 表?我目前收到以下错误:
##System.Data.Entity.Edm.EdmEntityType: : EntityType 'Cast' 没有定义键。定义此 EntityType 的键。\tSystem.Data.Entity.Edm.EdmEntitySet: EntityType: EntitySet 'Casts' 基于没有定义键的类型'Cast'。##
但是我不想创建 ID 键,我想使用 Film 和 Actor 的 ID 字段来制作复合主键,它们都是其他表的外键。
我应该怎么办?