Datenbankverbindung und Daten in einer Extra-Klasse?

ilsebilse15

Grünschnabel
Hallo an Alle!

Ich schreibe Daten in eine Datenbank. Bislang klappt auch alles ganz gut. Aber ich habe alles in einer Klasse geschrieben. Und da ich noch weitere Formulare mit den gleichen Datenbank-Daten benötige, wäre es doch sinnvoll, den unten stehenden Code (+ Variablen) in eine eigene Klasse zu schreiben, um dann in den entsprechenden Formularen darauf zugreifen zu können. Nun meine Frage: Wie mache ich das? Mit Inherits hat es nicht geklappt und mit Imports will es auch noch nicht so recht klappen...
:confused::confused::confused::confused:

Code:
con.ConnectionString = strCon
        con.Open()
        ds = New DataSet("db")
        tabell1Table = ds.Tables.Add("Tabelle1")
        tabelle2Table = ds.Tables.Add("tabelle2")
        tabelle1View = New DataView(tabell1Table)
        tabelle1Adapter = New OleDb.OleDbDataAdapter("Select * from tabelle1", con)
        tabelle1Adapter.Fill(tabelle1Table)
        tabelle1Adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
       tabelle1Cb = New OleDbCommandBuilder(tabelle1Adapter)
        tabelle2Adapter = New OleDb.OleDbDataAdapter("Select * from tabelle2", con)
        tabelle2Adapter.Fill(tabell2Table)
        tabelle2Cb = New OleDbCommandBuilder(tabell2Adapter)


Wäre super nett, wenn mir jemand weiterhelfen könnte... :)
 
Hi

Wovon wolltest du den Ableiten? :confused:

Schreib, wie du es vor hast, eine Klasse für den DB-Zugriff (Repository). Dies instanziierst du entweder einmal, beim ersten Gebrauch und reichst es an die anderen Klassen, in denen du es benötigst weiter (als Argument im Konstruktor oder einer Methode oder über ein Property) oder du machst die Methode des Repostories statisch (shared) und kannst dann ohne Instanz arbeiten (ist aber unschön und unsauber)
 
Hey,
Danke schon mal für die Antwort :)

Also, ich möchte einfach den unten genannten Code nicht in jedem Formular/ Klasse neu beschreiben müssen...
Irgendwie weiß ich nicht wie ich deinen Vorschlag realisieren soll. Kannst du mir vielleicht mal ein kleines Beispiel schicken?
 
Hallo,

erstelle dir doch eine eigene Datenbankklasse.
Diese verwaltet auch deine Verbindung zur DB.
Darin erstellst du dir eine Methode welche dir jeweils das passende SQL-Statement absetzt und ein DataSet zurückgibst.

Gruß
 

Neue Beiträge

Zurück