LINQ und Stored procedures DBML problem der Aktualisierung

Ich habe schwere frustration mit DBML-Dateien nicht aktualisieren, wenn ich das alter meiner gespeicherten Prozeduren.

Dies ist, was passiert. Ich verändert meine gespeicherten Prozedur. Ich löschen Sie dann die gespeicherte Prozedur aus .DBML-Datei und re-hinzufügen. Es Aktualisierungen korrekt in die .DBML-Datei, aber die .designer.cs-Datei wird nicht aktualisiert. Die einzige Lösung die ich gefunden habe, ist das löschen der gespeicherten Prozedur, dann löschen Sie die Tabelle, die gespeicherte Prozedur zurückgibt, fügen Sie die Tabelle, dann fügen Sie die gespeicherte Prozedur (alle in der .DBML-Datei). Und das auch nur manchmal funktioniert der trick.

Hat sonst noch jemand dieses problem gehabt? Sicherlich gibt es besser geeignete Methode zum aktualisieren der DBML-Dateien in Visual Studio 2008?

Vielen Dank im Voraus

  • Die DBML visual designer ist sehr viel ein "one-shot" Sache - es gibt keine update-Funktionalität von jeder Art. Man kann entweder untersuchen, ein Drittanbieter-tool, wie die DBML Tools von Huagati um dieses Problem zu lösen, oder wechseln Sie zu Entity Framework 4, die hat viel bessere Unterstützung für die Aktualisierung Ihrer bestehenden Modell aus der Datenbank, wenn die zugrunde liegende Datenbank hat sich geändert.
  • Ich weiß, das ist alt, aber ich stolperte über es heute um zu erfahren, ob das Verhalten (durch hinzufügen der neuen Klasse designer) erwartet. Warum nicht einfach Ausschneiden und einfügen von neu erstellten Klasse alte Klasse und dann löschen, die neu erstellte Klasse. Das hält die Dinge sortiert, die mit Ihrer version control und gibt Ihnen die richtige Klasse.
InformationsquelleAutor Peuge | 2011-01-24
Schreibe einen Kommentar