DatasetViewer

    • VB.NET
    • .NET 4.5
      Im Anhang ein klein Beispiel-Projekt, was ich eiglich in diesem Tut verwendet hab:
      codeproject.com/Articles/1030969/Relational-Datamodel

      Hier hab ich nun mein DatasetViewer noch mit drangepackt, das ist ein Form, mit dem man zum Debuggen Datasetse explorieren kann. Der ganze DatasetViewer-Code ist folgender:

      VB.NET-Quellcode

      1. Public Class DatasetViewer
      2. Public Shared Shadows Sub Show(dts As DataSet, Optional frmOwner As Form = Nothing)
      3. Dim frm = New DatasetViewer
      4. frm.Grid.DataSource = dts
      5. DirectCast(frm, Form).Show(frmOwner)
      6. End Sub
      7. Public Shared Shadows Sub ShowDialog(dts As DataSet, Optional frmOwner As Form = Nothing)
      8. Using frm = New DatasetViewer
      9. frm.Grid.DataSource = dts
      10. DirectCast(frm, Form).ShowDialog(frmOwner)
      11. End Using
      12. End Sub
      13. End Class
      Und nun sollte auch jeder der mit Datasets hantiert, wissen, wie man den DatasetViewer anzeigt - nämlich

      VB.NET-Quellcode

      1. Private Sub btShowDatasetViewer_Click(sender As Object, e As EventArgs) Handles btShowDatasetViewer.Click
      2. DatasetViewer.ShowDialog(Me.PersonProfessionDts)
      3. End Sub

      Mehr Code zum DtsViewer gibts nicht - alles andere macht das eigentümliche Control, was ich verwende - nämlich kein Datagridview, sondern ein FW2.0-Datagrid 8|
      Dieses sieht zwar bescheiden aus, kann aber hierarchische Beziehungen anzeigen - indem man Erweiterungs-Knoten erweitert.
      Zum Zurück-Navigieren erscheint ggfs. ein Pfeil oben rechts.
      Im DatasetViewer kann man auch Änderungen eintragen - die wirken sich dann in der Haupt-Anwendung aus.

      Foto-Strecke:
      . . . . . .
      . . . . . .
      Gezeigt ist, wie erst die Tabelle Person durch Knoten-Erweiterung geöffnet wird, dann wird von der Person "Gustav" der Person_PersonProfession-Knoten erweitert, um seine untergeordneten PersonProfession-Datensätze anzuzeigen.
      Person_PersonProfession ist der Name der DataRelation zwischen den Tabellen Person und PersonProfession.
      PersonProfession ist hier eine Mittler-Tabelle, die Personen mit Professions verknüpft - daher enthält sie nur scheinbar nichtssagende ForeignKeys.
      Aber es kann schon geschlossen werden, dass Gustav mit 2 Professions verknüpft ist - das spiegelt also die Tatsache wieder, dass er 2 Berufe hat.

      Wie gesagt: Es ist keine User-Anwendung, sondern ein Debug-Tool zum Untersuchen des Datenbestandes zur Laufzeit.
      Dateien

      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „ErfinderDesRades“ ()