Laden...

MySQL in .NET 5.0

Erstellt von Günther Weber vor 3 Jahren Letzter Beitrag vor 3 Jahren 447 Views
G
Günther Weber Themenstarter:in
28 Beiträge seit 2010
vor 3 Jahren
MySQL in .NET 5.0

Hallo, ich hoffe dass ich den richtigen Ordner erwischt habe.

Aktuell arbeite ich mit Visual Studio 19. Die Projekte sind ein paar Tage älter und für .NET Framework 4.8 erstellt.

Heute habe ich ein neues Projekt begonnen. Als ich so weit war dass ich auf die MySQL Datenbank zugreifen konnte, kam die böse Überraschung: Der MySQL Connector meldet den Fehler:

The type initializer for MySQL.Data.MySQLClient.MySqlConnectAttrs threw an exception.

Dann habe ich bemerkt dass das neue Projekt für .NET 5.0 ist, ich aber nicht auf .NET Framework 4.8 umschalten kann. Ich habe zuerst den aktuellen Connector/NET 8.023 installiert, da die bisher installierte Version nicht für .NET 5.0 kompatibel ist, aber die Fehlermeldung verschwindet nicht.

Bei "neues Projekt" gibt es die Möglichkeit "WPF-Anwendung" (was ich gewählt hatte) und "WPF-App" (wo ich das ältere Framework nutzen kann).

Ich würde ja gern die neuesta Technologie verwenden, aber wie kann ich dann auf MySQL zugreifen?
Oder muss ich tatsächlich alles noch einmal als WPF-App neu zusammenklicken?

Danke - Günther

T
2.224 Beiträge seit 2008
vor 3 Jahren

Hab gerade geoggelt, mit Mysql.Data sollte .NET 5 laufen.

Artikel dazu:
https://kontext.tech/column/dotnet_framework/607/connect-to-mysql-in-net-5

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

16.833 Beiträge seit 2008
vor 3 Jahren

Kurzer Blick auf NuGet zeigt, dass die Dependency für .NET 5 ist.
https://www.nuget.org/packages/MySql.Data/

Wenn Du eine Exception bekommst, dann hast Du in 99% der Fälle eine Message oder auch eine InnerException mit Details.
Musst mal schauen, was da drin steht - wir sehens aus der Entfernung nicht 😉

G
Günther Weber Themenstarter:in
28 Beiträge seit 2010
vor 3 Jahren

ja, das habe ich ja schon auf der Seite https://dev.mysql.com/doc/connector-net/en/connector-net-versions.html gesehen.
Aber irgendetwas ist noch anders als bisher gewohnt....

Ich bekomme keine Exception, nur eine MessageBox.

T
2.224 Beiträge seit 2008
vor 3 Jahren

Dann wäre die Frage wie dein Code aussieht wo der Fehler auftritt.
Die Ursache muss dann auf deiner Seite liegen.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

G
Günther Weber Themenstarter:in
28 Beiträge seit 2010
vor 3 Jahren

Sorry, bekomme doch eine Exception. Bei Connection.open.

Aber ich verstehe sie nicht. Ich habe die MySQL.Data.dll eingebunden, wie sonst auch immer. Will er eine weitere Datei aus dem Connector-Ordner?

16.833 Beiträge seit 2008
vor 3 Jahren

Hier kann leider keiner hellsehen, bisher.
Kannst Du daher bitte der Bitte von T-Virus nachkommen und bisschen Code zeigen?

Siehe auch [Hinweis] Wie poste ich richtig?
Danke Dir.

Und wenn Du von "Dll eingebunden" sprichst, dann vermute ich, dass Du direkt von der DLL sprichst und nicht vom NuGet.
Du musst unbedingt die NuGet referenzieren und nicht nur die DLL. So funktioniert das .NET Ökosystem seit vielen Jahren.

G
Günther Weber Themenstarter:in
28 Beiträge seit 2010
vor 3 Jahren

Und wenn Du von "Dll eingebunden" sprichst, dann vermute ich, dass Du direkt von der DLL sprichst und nicht vom NuGet.
Du musst unbedingt die NuGet referenzieren und nicht nur die DLL. So funktioniert das .NET Ökosystem seit vielen Jahren.

Das war mein Problem. Den Begriff "NuGet" sehe ich heute zum ersten mal.
Und jetzt habe ich auch die passenden Menübefehle gefunden.
Bisher hat es immer ohne funktioniert.

Danke euch beiden.