Frage

Verwenden von Entity Framework 4.1 Gegen eine ältere Datenbank kann ich keine Arbeitsgruppe von TPT-Erbschaftsmodellen erstellen, die nicht pluralisiert sind, und verschiedene Namen für einen gemeinsamen Primärschlüssel verwenden.

Ich verwende Datenbank-Tabellen-Organisation, Konto und Firma, wie unten dargestellt: generasacodicetagpre.

Account.ccountID und Company.companyID verfügen über eine FK-Einschränkung, die Werte in diesen Spalten auch in der Organisation in der Organisation enthalten sind Wenn ich diese Tische von Grund auf entwerfen, würden sowohl Konto als auch Unternehmen als primärer Schlüssel als primärer Schlüssel verwenden. generasacodicetagpre.

Wenn ich versuche, den unten aufgeführten einfachen Auswahlcode zu verwenden, erhalte ich den Fehler:

Die Eigenschaft 'OrganisationsID' ist kein ein erklärte das Eigentum auf dem Typ "Firma". Stellen Sie sicher, dass das Eigentum nicht gewesen ist ausdrücklich vom Modell von ausgeschlossen mit der Ignoriermethode oder Notgappedattribute-Datenanmerkung. Stellen Sie sicher, dass es sich um ein gültiges Primitiv handelt Eigentum. generasacodicetagpre.

War es hilfreich?

Lösung

I described TPT mapping here. It is step by step so it should work but you need to map Ids in child entities.

But the issue is that you start with Model-first, generate DdContext which is dependent on EDMX, then delete that EDMX and start defining mapping by yourselves. You should decide if you want to use Model-first or Code-first. You just wasted your effort in EDMX.

If you want to know how to use Model-first with DbContext check this article. If you want to use Code-first don't create EDMX and follow this article to map your inheritance.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top