Heim >Backend-Entwicklung >C++ >EF -Code zuerst: Navigationseigenschaften initialisieren oder nicht initialisieren?
EF -Code zuerst: Navigationseigenschaftsinitialisierung - Initialisierung oder nicht?
In Entity Framework Code stellt sich zunächst eine häufige Frage zur Initialisierung von Navigationseigenschaften in Ihren POCO -Klassen (Plain Old CLR -Objekt). Sollten Sie sie initialisieren oder so lassen, wie es ist? Lassen Sie uns die Vor- und Nachteile untersuchen.
Sammlungen: eine Frage des Stils
Für die Sammlung von Navigationseigenschaften (wie ICollection<Address>
in einer User
-Klasse) ist die Initialisierung weitgehend eine Frage des persönlichen Codierungsstils. Es wirkt sich nicht von Natur aus auf die Geschäftslogik der Anwendung aus. Einige Entwickler bevorzugen jedoch eine faule Initialisierung, um potenzielle NullReferenceException
Fehler und unnötige Objekterstellung zu vermeiden.
Referenzeigenschaften: Initialisierung vermeiden
Im Gegensatz zu Sammlungen ist die Initialisierung der Referenznavigationseigenschaften (z. B. License
in einer User
Klasse) im Allgemeinen entmutigt. Hier ist, warum:
EF -Kernüberlegungen
Im EF -Kern, während die Relationship -Fixup nicht direkt durch initialisierte Referenzeigenschaften bei Konstruktoren beeinflusst wird, überschreiben Sie sie immer noch nicht. Darüber hinaus kann die Initialisierung dieser Eigenschaften die Methode Include
beeinträchtigen und Probleme beim Aussaat von Daten mit HasData
Empfehlung:
Um potenzielle Komplikationen zu vermeiden, ist es bewährte Verfahren, nicht Referenznavigationseigenschaften in Ihren Konstruktoren zu initialisieren. Die Initialisierung der Sammlung bleibt eine Frage der persönlichen Präferenz.
Das obige ist der detaillierte Inhalt vonEF -Code zuerst: Navigationseigenschaften initialisieren oder nicht initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!