Kann man Entity Framework-Beziehungen nur mit Fremdschlüsseln (keine virtuellen Eigenschaften des Referenztyps) mit FluentAPI definieren (Datenmodelle sollten nicht geändert werden)?
KartendatenModell
public class CardDataModel
{
public int CardId { get; set; }
}
CheckItemDataModel
public class CheckItemDataModel
{
public int CheckItemId { get; set; }
public int CardId { get; set; }
}
Ja, das ist in EF Core möglich. Es war nicht in EF6 und darunter, aber jetzt bietet EF Core parameterlose Überladungen von HasMany
/ HasOne
die das Konfigurieren einer solchen Beziehung ermöglichen:
modelBuilder.Entity<CardDataModel>()
.HasMany<CheckItemDataModel>() // <-- note this
.WithOne()
.HasForeignKey(e => e.CardId);