/ / Wie behalte ich meine benutzerdefinierten Linq zu SQL-Klassenänderungen? - linq, asp.net-mvc-2, orm

Wie behalte ich meine benutzerdefinierten Linq zu SQL-Klassenänderungen? - linq, asp.net-mvc-2, orm

Meine MVC2 App verwendet LINQ to SQL als ORM. Ich ziehe die Tabellen einfach aus der SQL Server-Explorer-Verbindung auf die LINQ-Designoberfläche. Zwei der Tabellen (A und B) sind verwandt. Tabelle A hat 3 Fremdschlüssel, die auf Tabelle B verweisen. In der LINQ-Entwurfsoberfläche ändere ich den Namen der übergeordneten Eigenschaft für diese Zuordnungen manuell, um ihnen mehr definierte Namen zu geben. Wenn ich jedoch die Tabellenstruktur im SQL Server ändere und die neue Struktur per Drag & Drop nach LINQ verschiebe, würde ich die Namen verlieren. Gibt es eine Möglichkeit, dies zu verhindern? Vielen Dank.

Antworten:

0 für die Antwort № 1

Nein. Wenn Sie die Tabellen zurück in den Designer ziehen, generiert Linq to SQL den Code in der partiellen Klasse neu und löscht Ihre benutzerdefinierten Änderungen.

Die einzige Möglichkeit, die Namensänderung beizubehalten, besteht darin, die betroffenen Tabellenfelder in der Datenbank umzubenennen.

Sie können eine solche Anpassung Erhaltung mit dem erreichen T4 Werkzeugkasten.


0 für die Antwort № 2

Es ist immer eine schlechte Idee, die Assoziationen zu machenauf der LINQ-Ebene. Stellen Sie die Verknüpfungen auf Tabellenebene her. Dadurch wird sichergestellt, dass die Designerklasse die richtigen Verknüpfungen wiedergibt, wenn Sie die Tabellen per Drag & Drop verschieben.