Ich werde Textfeld Wert bearbeiten .. aber ich sah, es gibt ein Problem
%Vor%FEHLER 1:
Der Name 'sqlDbType' existiert nicht im aktuellen Kontext
FEHLER 2:
'ERPSystem.DatabaseConnector' enthält keine Definition für 'Öffnen' und keine Erweiterungsmethode 'Öffnen', die ein erstes Argument vom Typ akzeptiert 'ERPSystem.DatabaseConnector' konnte gefunden werden (fehlt eine Verwendung? Richtlinie oder eine Assembly-Referenz?)
Meine DBConnector-Klasse ist:
%Vor%C # ist case sensetive ... Versuchen Sie es mit Intellisense.
%Vor%Die anderen Fehler können verschwinden, wenn Sie die erste korrigieren.
Nebenbei bemerkt, Sie werden in Verbindungs- / Speicherlecks geraten, ohne die Ressourcen richtig zu behandeln. Persönlich verwende ich die using
Anweisung, um die Fallstricke zu vermeiden.
Ich bin nicht ganz sicher, was "DatabaseConnector" ist, möglich ist Ihre eigene Klasse, aber Sie sollten wahrscheinlich SqlConnection stattdessen oder möglicherweise SQL-Datenbank .
Update: Ich bin mir nicht sicher, ob die DBConnector-Klasse ein Singleton oder eine Factory oder beides sein soll - also habe ich meine Antwort vereinfacht, um sie zu vermeiden. Stellen Sie eine weitere Frage mit Details zum Erstellen des gesuchten Musters und zum Bereitstellen der DBConnector-Klasse. Ich denke, es ist machbar, aber ich habe einfach nicht genug Informationen, um zu beheben, was Sie haben.
%Vor% Sie haben tatsächlich Syntaxfehler, weil Sie s
anstelle von S
verwendet haben. Außerdem
SqlCommand verfügt weder über eine Methode namens Open()
noch über eine für Close()
Sie sollten SqlConnection verwenden, da es die Methoden Open()
und Close()
enthält und die Eigenschaft Connection
von SqlCommand auf Ihre Instanz von SqlConnection
setzt, um die Verbindung zu Ihrer Datenbank zu öffnen und zu schließen.
Sie haben mehr Fehler.
SqlConnection
anstelle von DatabaseConnector
com
, verweisen aber auf ihn als cmd
ItemNo
sowie ItemName
). Bearbeiten, basierend auf Ihrer neuen Quelle:
con.Connect()
anstelle von con.Open()
. Ist das Ihr eigener Code?
Verwenden Sie die Klasse, die von The Code Project erstellt wurde?
Nun, ich denke der Fehler liegt an der Verbindungszeichenfolge. Die Verbindungszeichenfolge muss in der Klasse OdbcDatabaseConnector sein. Nun, ich habe diese Klasse von Code Project nie benutzt, aber kann es sein.
Wenn Sie mit dem Großbuchstaben "S" schreiben, aber immer noch denselben Fehler erhalten, vor allem in Visual Studio 2015, schreiben Sie statt "SqlDbType" zu schreiben: System.Data.SqlDbType
zum Beispiel:
%Vor%