5

Ich habe mit Entity Framework 4 und SQL Server gearbeitet. Das Hauptproblem, das ich gefunden habe, ist, dass die Tabellennamen in der Datenbank alle Kleinbuchstaben sind und Unterstriche haben. Dies bedeutet, dass beim Erstellen der Entitäten in Visual Studio die Klassen und die Eigenschaften nur Kleinbuchstaben mit Unterstrichen haben. Gibt es eine Möglichkeit, Pascal Casing für die erstellten Klassen und Camel Casing für die Eigenschaften zu erreichen?Forcing Entity Framework generierte Klassen mit Pascal Gehäuse- und Spaltennamen mit Camel Gehäuse

ZB:

table_name -> als Tablename umgewandelt werden

Gibt es irgendwelche anderen Vorlagen hinzugefügt werden müssen oder jede andere Art und Weise, dies zu erreichen.

Bearbeiten der Klassenname und Eigenschaften manuell in wird nicht empfohlen, da ich sehr große Anzahl von Einheiten haben

+0

Sie müssen manuell Entitäten im Designer aktualisieren und dann Ihre Klassen korrekt erzeugt werden. –

+0

@LadislavMrnka Das manuelle Update ist ein mühsamer Prozess, da es in meinem Fall eine große Anzahl von Entitäten enthält. – Xavier

+0

@LadislavMrnka Gibt es eine Möglichkeit, die Klassen in pascal casing zu erzeugen, während die EDMX-Datei erzeugt wird oder alle Klassen automatisch umbenannt werden können Die EDMX wird erstellt .. – Xavier

Antwort

2

Warum nicht ein T4-Vorlage verwenden, um die Entitätsklassen zu generieren? Auf diese Weise können Sie eine Methode hinzufügen, um die Tabellennamen in die Konvention Ihrer Wahl zu konvertieren.

Im Lieferumfang von VS sind einige integrierte T4-Vorlagen für EF enthalten. Es ist also sehr wahrscheinlich, dass Sie nur eine davon auswählen und ändern können. Ich würde nicht empfehlen, von ganz alleine zu schreiben!

Wenn Sie T4-Vorlagen noch nicht verwendet haben, können Sie Ihr EF-Modell im Designer schnell öffnen, indem Sie mit der rechten Maustaste auf einen leeren Teil der Entwurfsoberfläche klicken und "Codegenerierungselement hinzufügen" auswählen. Dies öffnet einen Dialog mit den installierten T4-Vorlagen für EF, und Sie können wählen, was Ihnen am besten passt.

Sie können dann mit der rechten Maustaste auf die T4-Vorlagendateien im Projektmappen-Explorer klicken (es hat die Erweiterung .tt) und wählen Sie "Benutzerdefiniertes Werkzeug ausführen", um die Entitäten selbst zu generieren. Sie können die .tt-Datei bearbeiten (es ist nur eine einfache Textdatei, die etwas enthält, das schrecklich nach VBScript aussieht!) Und die Änderungen vornehmen. Führen Sie dann das benutzerdefinierte Tool erneut aus, und prüfen Sie, ob die generierten Entitäten die richtigen Namen haben.

Hoffe, das hilft.

+0

Erledigt das gleiche ... Aber .tt Datei enthält riesigen Code .. Was soll ich bearbeiten ... Ich habe nach der Methode für die Konvertierung in Pascal Gehäuse überprüft, aber nichts scheint in dieser ... verfügbar zu sein ... Sollte ich irgendwelche benutzerdefinierte hinzuzufügen Methode oder sollte ich irgendwelche verfügbaren Methoden ändern ..? – Xavier

Verwandte Themen