CodeFirst EF4.1 MVC Contre l'héritage de la base de données la Multiplicité des conflits

Peu importe la manière dont je le mélange, il me donne des erreurs. J'ai le sentiment que je suis absent quelque chose d'évident que je continue à recevoir ces erreurs.

Une ou plusieurs erreurs de validation ont été détectés au cours de la génération de modèle:

Système.Les données.Edm.EdmAssociationType: : la Multiplicité des conflits avec la contrainte référentielle dans le Rôle "Venue_Courses_Source" en relation "Venue_Courses'. Parce que toutes les propriétés dans le Rôle Dépendants sont pas les valeurs null, multiplicité des le Rôle Principal doit être à '1'.

Système.Les données.Edm.EdmAssociationEnd: : la Multiplicité n'est pas valide dans le Rôle "Venue_Courses_Target" en relation "Venue_Courses'. Parce que le Rôle Dépendants fait référence à la clé des propriétés, la limite supérieure de la multiplicité des personnes Dépendantes Rôle doit être de 1.

Un Cours ne peut avoir qu'un lieu, des lieux peut être utilisé par de nombreux Cours

public class Course
{
[Key]
public virtual int Id { get; set; }
public string Title { get; set; }
public DateTime StartDate { get; set; }
public int VenueId { get; set; }
public virtual Venue Venue { get; set; }
}
public class Venue
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Course> Courses { get; set; }
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
#region Courses
//Table Alias
modelBuilder.Entity<Course>().ToTable("DBSCHEMA.TR_COURSES");
//Keys
modelBuilder.Entity<Course>().HasKey(c => c.Id);
//Joins
//Join to Venues
modelBuilder.Entity<Course>().HasOptional(c => c.Venue);
//Fields
modelBuilder.Entity<Course>().Property(c => c.Id).HasColumnName("COURSE_ID");
modelBuilder.Entity<Course>().Property(c => c.Title).HasColumnName("CR_TITLE");
modelBuilder.Entity<Course>().Property(c => c.StartDate).HasColumnName("START_DATE");
modelBuilder.Entity<Course>().Property(c => c.VenueId).HasColumnName("VENUE_ID");
#endregion
#region Venues
//Table Alias
modelBuilder.Entity<Venue>().ToTable("DBSCHEMA.VENUES");
//Keys
modelBuilder.Entity<Venue>().HasKey(v => v.Id);
//Joins
modelBuilder.Entity<Venue>().HasMany(venue => venue.Courses);
//Fields
modelBuilder.Entity<Venue>().Property(v => v.Id).HasColumnName("VENUE_ID");
modelBuilder.Entity<Venue>().Property(v => v.Name).HasColumnName("VENUE_NAME");
#endregion
}
InformationsquelleAutor David C | 2011-11-04