hier sind zwei Entitäten meines Modells mit fließend EntityFramework Konfiguration davonEntity Framework Kaskade löschen Konfiguration
Player.cs
public class Player
{
public string Name { get; set; }
public virtual Statistics Statistics { get; set; }
}
Statistics.cs
public class Statistics
{
public int GamePlayed { get; set; }
public int Assists { get; set; }
public int Goals { get; set; }
}
DbContextClass
Am Ende wird ein Fremdschlüssel namens "StatisticsId" auf meiner Player-Tabelle erstellt, was in Ordnung ist. Ich möchte beim Löschen eines Players die zugehörigen Statistiken kaskadieren. Hier ist mein Problem, das Hinzufügen WillCascadeDelete zu meiner Aussage als
modelBuilder.Entity<Player>()
.HasOptional(x => x.Statistics)
.WithMany()
.Map(x => x.MapKey("StatisticsId"))
.WillCascadeOnDelete(true);
Ergebnisse als das Löschen der Spieler, wenn die Statistik gelöscht. Wie kann ich das Gegenteil bewirken, indem ich StatisticsId foreignKey auf der Player-Tabelle belasse?
Der Hauptpunkt hier ist, dass Statistics
"alleine leben" kann ohne Player
verwandt. Ist es möglich, Entity Framework so einzustellen, dass es automatisch gelöscht wird Statistics
oder muss das manuell gemacht werden?