====== Migrations EF − Problème de double clé étrangère ====== Parfois Entity Framework génère une clé étrangère en double comme dans cet exemple : CreateTable( "dbo.Table", c => new { AttributID = c.Int(nullable: false), DeuxiemeAttributID = c.Int(nullable: false), Attribut_ID = c.Int(), }) .PrimaryKey(t => new { t.AttributID, t.DeuxiemeAttributID }) .ForeignKey("dbo.DeuxiemeTable", t => t.Attribut_ID) .ForeignKey("dbo.DeuxiemeTable", t => t.AttributID, cascadeDelete: true) .ForeignKey("dbo.TroisiemeTable", t => t.DeuxiemeAttributID, cascadeDelete: true) .Index(t => t.AttributID) .Index(t => t.DeuxiemeAttributID) .Index(t => t.Attribut_ID); Dans cet exemple, soit : * Il s'agit d'un manque de description des multiplicités * Il s'agit d'un problème de références croisées ===== Exemple de multiciplité de 1 à n ===== modelBuilder.Entity() .HasMany(x => x.Employes) .WithRequired() .HasForeignKey(x => x.SocieteID) .WillCascadeOnDelete(false);