Ich kann keine [.] (Punkte) in meinen Schlüsselnamen (Indizes, Primärschlüssel und Fremdschlüssel) haben, wenn sie von Add-Migration generiert werden, also habe ich versucht, einen CSharpMigrationCodeGenerator zu schreiben, aber leider nicht scheinen es Ihnen zu ermöglichen, die Fremdschlüssel oder Indexnamen zu ändern. Der Name des Primärschlüssels kann als Teil des Überschreibens der Create-Tabelle festgelegt werden:
%Vor%Aber was ich wirklich brauche, ist ein Weg, um sicherzustellen, dass es gerade den ganzen Stopp entfernt hat (was das Überschreiben des benutzerdefinierten Namensgenerators bedeutet) - aber ich kann nicht sehen, wie das geht.
Haben Sie nicht versucht, Code mit den Tools nachträglich zu generieren?
Er generiert nicht nur erste Code-Klassen für Sie aus der Datenbank, Sie können auch die T4-Vorlagen anpassen, die Ihre Objekte generieren, um spezielle Szenarien zu behandeln (z. B. benutzerdefinierte Benennungslogik für reservierte Zeichen). Meine entity.tt hat oben jedes generierte Objekt: -
%Vor%Dies bedeutet, dass ich meine gesamte Datenvalidierung in einer separaten Klasse verwalten lassen kann, die bei der Neuerstellung meiner Objekte nicht überschrieben wird.
Dieses Problem existiert nicht mehr und war zu der Zeit ziemlich spezifisch. Die Dinge haben sich im letzten Jahr mit Werkzeugen entwickelt und sind daher nicht mehr wirklich relevant, da Sie das Problem auf diese Weise nicht lösen müssten.
Vielen Dank für das Lesen und Kommentieren
Tags und Links c# entity-framework-5 code-generation