2016-08-10 3 views
0

Ich bin ziemlich erfahren mit Visual Studio 2013 und ich bin jetzt Upgrade auf VS 2015 und läuft und in eine Windows Forms-Anwendung hinzufügen und eine neue Datenquelle hinzufügen. Es ist sehr einfach, mein Problem neu zu erstellen.MySQL Visual Studio 2015 Sie haben bereits eine brauchbare Verbindung

Hier ist mein Setup:

Visual Studio 2015 Unternehmen 2015 Update 3
MySQL für Visual Studio 1.2.6
Connector/Net 6.9.9

Hinweis: Die obige Konfiguration nach der unterstützt wird Unterstützung Informationsmatrix bei http://dev.mysql.com/doc/visual-studio/en/visual-studio-install.html und ich habe auch gerade über jede andere Permutation der unterstützten Software dort aufgeführt.

Hier ist, wie das Problem neu zu erstellen:

Neue C# Windows Forms-Anwendung
Neue Datenquelle hinzufügen
Datenbank
Dataset
Neue Verbindung (Verbindung just fine)
Speichern Sie die Verbindung
Wählen Sie Ihre Datenbankobjekte
Wählen Sie eine beliebige Tabelle
Ende

Fehler: Einige Aktualisierungsbefehle konnten nicht automatisch generiert werden. Die Datenbank hat den folgenden Fehler zurückgegeben: Sie haben bereits eine verwendbare Verbindung.

Dankbar für jeden, der sogar einen Hinweis geben kann, was ich falsch machen könnte.

Antwort

5
  1. Installieren Sie mysql-for-visualstudio-2.0.4.msi (here).
  2. Installieren Sie Connector/Net 6.9.9.msi (here).
+0

Ich kann bestätigen, dass diese Lösung funktioniert. Es scheint, dass ein früherer Fehler in MySQL für Visual Studio in Version 2.0.4 behoben wurde. – user2926302

0

Ich hatte in den letzten 24 Stunden damit zu kämpfen.

Erstens: Haben Sie irgendwelche Projektdateien von VS gelöscht? Ich ging in meinen Papierkorb und restaurierte alles von VS, das ich gelöscht hatte.

Das Problem wurde behoben. Stellen Sie sicher, dass alle Datenverbindungen von VS wiederhergestellt werden.

Wenn das nicht funktioniert, lass es mich wissen.

+0

Vielen Dank für Ihre Antwort schreiben. Hier ist mehr Details: Ich zog auf eine neue Festplatte und gleichzeitig Upgrade auf VS 2015 von VS 2013. Das neue Laufwerk hatte eine Neuinstallation von Win 10 und VS 2015. Ich installierte MySQL für VS und Connector/Net dann kopiert der Projektordner von der alten VS 2013 zur neuen VS 2015. Das war's. Sollte eine ziemlich saubere Installation sein. Beachten Sie, dass ich zuerst Probleme beim Datenzugriff mit den vorhandenen Projekten hatte, aber auch Probleme mit komplett neuen Projekten hatte. Ich bin verwirrt und denke, dass die einzige Option für mich ist, zu meiner alten Fahrt zurückzukehren. – user2926302

+0

Welche Version von MYSQL? –

+0

'5.5.46-0ubuntu0.14.04.2' – user2926302

1

Hier ist die Lösung, die ich gefunden habe. Als ich weiter nachforschte, stellte ich fest, dass etwas (ich weiß nicht was) Connector/net 6.9.9 erwartete und etwas anderes (wieder weiß ich nicht was) Connector/net 6.9.8 erwartete. Es gibt nichts in meinen Projekten oder Installationen, das 6.9.8 hätte referenzieren sollen. Jedenfalls habe ich 6.9.8 installiert und seitdem hat alles perfekt funktioniert.

+0

Ich kann bestätigen, dass die Deinstallation von 6.9.9 und die Installation von 6.9.8 auch für mich funktioniert hat. –

0

ich ausprobiert fast alle oben genannten Lösungen alle von ihnen schließlich scheiterte, was ich tat ist

  1. Erstellt DataSet manuell durch Recht, das Projekt und hat einen neuen Datensatz klicken.
  2. Dann erstellt DataTable in das mit allen Spalten als gleich in der Abfrage.
  3. Sie können sehen Bericht Daten Menü in Rdlc Bericht. Darunter können Sie DataSet sehen, das Sie ziehen können und die Datatable-Spalte in den rdlc-Bericht einfügen.
  4. Im Backend können Sie so etwas wie dieses

     var ds = this.GetData(); 
         var dt = ds.Tables[0]; 
         ReportViewer1.Reset(); 
         ReportViewer1.LocalReport.ReportPath = Server.MapPath("Report1.rdlc"); 
         ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet2", dt)); // same name as dataset created under report data menu 
    
         ReportViewer1.DataBind(); 
    
         ReportViewer1.LocalReport.Refresh(); 
    
Verwandte Themen