Zum Inhalt springen

EntityFramework: Unterscheidung zwischen Typ- und Entitätsmembern


Empfohlene Beiträge

Geschrieben

Servus,

kennt jemand eine Möglichkeit zu unterscheiden, ob ein Member ein Typ- oder ein Entitätsmember ist?

Mir fallen zwei Wege ein, beide gefallen mir nicht sooo sehr:

a) SQL-Abfrage der information_schema_columns; wenn der Membername als column_name der Entität enthalten ist, ist es ein Entitätsmember. Ggf. nur einmal ausführen und global als Liste vorhalten.

B) Jeder Typmember bekommt bei der Deklaration ein CustomAttribut verpasst, das über Reflections ausgelesen wird.

Gibts da was schöneres?

Geschrieben

Moin,

die edmx-Datei die dein EntityModel beschreibt, enthält eine Section "edmx:ConceptualModels" die Knoten dort "EntityType" wiederum enthalten "Property" und "NavigationProperty" - welche ausschließlich "Entitätmember" sind. Ich denke das auswerten dieser XML-Datei sollte effektiver sein als ne SQL Abfrage oder Reflection.

Ich weiß nicht genau in welcher Form du diese Information benötigst, ansonsten kann man durch "Zu Definition springen" herausfinden ob man in nem Entitätsmember oder Typmember gelandet ist, abhängig davon ob du in der Designer Datei landest oder in der partiellen Klasse.

Grüße ausm Norden

Geschrieben

Ich benötige die Info zur Laufzeit. Es stehen also prinzipiell die DB und die Typinformationen zur Verfügung...

Grüße ausm Norden

Grüße in die Heimat :nett:

Geschrieben

Die Entitäts-Member scheinen alle ein Attribut welches von "EdmPropertyAttribute" abgeleitet wird zu bekommen (siehe Designer.cs). Du könntest also zur Laufzeit mittels Reflection nach diesem Attributstyp Ausschau halten. Dann musst du für die Typmember keine CustomAttribute basteln.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...