Bei der Verwendung von EF Core Migrations erfasst das Tool nicht alle meine Eigenschaften, nur die "Id" und einige (nicht alle) der FKs (Navigationseigenschaften). Es scheint auch die "Tabelle pro Hierarchie" sehr gut zu verstehen - da es einen Diskriminator eingerichtet hat, wo ich es wollte, aber die Migrationsdatei selbst spiegelt nicht die Eigenschaften wieder, die ich in meinem Modell-Namensraum habe (siehe GitHub-Code).EF Core Migrations erfasst nicht alle Eigenschaften
Meine DbContext befinden sich hier: https://github.com/aredfox/TheConference/blob/master/InfoBooth/TheConference.InfoBooth.Data/InfoBoothContext.cs hier die Modellklassen: https://github.com/aredfox/TheConference/tree/master/InfoBooth/TheConference.InfoBooth.Core/Model
Sie bei der generierten "Initial Migration" aussehen kann [https://github.com/aredfox/TheConference/blob/master/InfoBooth/TheConference.InfoBooth.Data/Migrations/20170604125116_Initial.cs]. Dort sehen Sie, dass es alle Id-Eigenschaften (definiert in der Basisklasse [Entity][1]
) aber keine der anderen Eigenschaften I meiner Model classes erkannt hat.
Ich verwendete den Ansatz, eine Konsolenanwendung hinzuzufügen, um Migrationen auszuführen (andernfalls wird es nicht funktionieren - siehe Julie Lerman's tips zum Einstieg in EF Core). Wenn ich also Migrationen mache, mache ich das so: dotnet ef --startup-project ../../TheConference.Infrastructure.ConsoleApp migrations add Initial
.
Muss ich Anmerkungen oder Modelbuilder oder eine Form von EntityTypeConfiguration in EFCore verwenden müssen EF wissen zu lassen, was ich nehmen?.
Um etwas mehr hinzuzufügen, benötigen die primitiven Eigenschaften und Referenznavigationseigenschaften Setter. Sammlungsnavigationen müssen nicht gesetzt werden. (Es ist üblich, dass der Benutzer den Auflistungsinitialisierer im Konstruktor oder im Standardwert aufruft). Die ID wurde abgeglichen, da die Schnittstelle über Setter definiert und die Navigation der Sammlungen zugeordnet wurde. – Smit
Danke Kumpel. Finden Sie es auch heraus, wenn Sie sie mit der fließenden API cfg ich bekam die Fehlermeldung, dass sie readonly waren und dann mein Penny fiel ... Danke für die Antwort obwohl! Dummer Fehler, habe ich einfach übersehen. –
Gern geschehen, Kumpel. Manchmal passiert es uns allen :) –