DataSet Designer in Visual Studio 2005

Written on June 07, 2005

Der DataSet Designer in Visual Studio 2005 ist im Vergleich zum DataSet Designer in Visual Studio 2003 ein echter Hit.

Allerdings finde ich, hat er einen (eigentlich zwei) ziemlich große(n) Wermutstropfen:

Szenario 1:

Zieht man eine Stored Procedure in den Designer, so hat man nach dem Rechtsklick auf die erzeugte Tabelle und den Klick auf "Configure..." folgenden Assistenten vor sich:

Hier kann man bequem die Stored Procedures für Select, Insert, Update und Delete auswählen. Diese werden dann automatisch auf die Fill bzw. GetData und Update Methoden des DataTableAdapters gemappt. Feine Sache, funktionert wunderbar.

Nachteil: erzeuge ich so mehrere Tabellen in meinem DataSet Designer, fehlen mir die Primary Keys und die Relations zwischen den Tabellen. Schade - Mehraufwand einplanen.

Szenario 2:

Zieht man eine oder mehrere Tabellen in den DataSet Designer, so hat man sofort ein DataSet mit allen Primary Keys und Relations zwischen den Tabellen:

Auch hier gilt: Feine Sache, funktionert wunderbar.

Versucht man nun allerdings, wie oben gezeigt, via "Configure...", die Stored Procedures für Insert, Update und Delete (und auch Select) zuzuweisen, wird man kläglich scheitern. Man kann zwar beliebige Stored Procedures zuweisen - diese müssen aber neuen Methoden für den DataTableAdapter zugewiesen werden, da der DataSet Designer für die Standard-Methoden SQL-Text-Statements erwartet.

Hier hilft auch kein zeitlicher Mehraufwand - das ist schlichtweg umständlich und produziert Verwirrung für den Anwender des DataSets bzw. des DataTableAdapters.

Viel besser wäre imho folgende Lösung:

Die Tabellen-Struktur sollte über Drag'n Drop von Tabellen erzeugt werden können. Somit sind alle Relations und Keys sofort verfügbar (Löschen geht immer einfach als Anlagen). Danach sollte der User sprich Developer entscheiden können, ob er auf die Standardmethoden Stored Procedures oder SQL-Statements zuweisen möchte.

Meine Meinung zu diesem Thema habe ich bereits im MSDN Product Feedback Center kundgetan.

Wer mit dieser Situation im DataSet Designer also ebensowenig glücklich ist wie ich, möge doch bitte für meinen Änderungsvorschlag voten - danke.