Ich habe einen lokalen Xampp Server installiert und versuche gerade mit C# und MySQL eine einfache SELECT Abfrage durchzuführen und das Ergebnis in der Console anzuzeigen.
using System;
using MySql.Data.MySqlClient;
namespace ConsoleApp1
{
class ConsoleApp1
{
private static MySqlConnection conn;
static void connect()
{
string server = "localhost";
string database = "mysql";
string user = "root";
string password = "";
string port = "3306";
string sslM = "none";
string connString = String.Format("server={0};port={1};user id={2}; password={3}; database={4}; SslMode={5}", server, port, user, password, database, sslM);
conn = new MySqlConnection(connString);
try
{
conn.Open();
Console.WriteLine("Connection Successful");
string query = "SELECT * FROM User";
MySqlCommand cmd = new MySqlCommand(query, conn);
MySqlDataReader reader;
reader.ExecuteReader(cmd);
while (reader.Read())
{
Console.WriteLine("ID: {0}, Name: {1}", reader["Host"], reader["User"]);
}
reader.Close();
conn.Close();
}
catch (MySqlException e)
{
Console.WriteLine(e.Message + connString);
}
}
static void Main(string[] args)
{
connect();
Console.ReadLine();
}
}
}
Im Debugger wird eine Fehlermeldung angezeigt.
Erstellen gestartet...
1>------ Erstellen gestartet: Projekt: ConsoleApp1, Konfiguration: Debug Any CPU ------
1>C:\Users\andi\ConsoleApp1\ConsoleApp1\Program.cs(32,24,32,37): error CS1061: "MySqlDataReader" enthält keine Definition für "ExecuteReader", und es konnte keine zugängliche ExecuteReader-Erweiterungsmethode gefunden werden, die ein erstes Argument vom Typ "MySqlDataReader" akzeptiert (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis).
1>C:\Users\andi\ConsoleApp1\ConsoleApp1\Program.cs(32,17,32,23): error CS0165: Verwendung der nicht zugewiesenen lokalen Variablen "reader".
========== Erstellen: 0 erfolgreich, 1 fehlerhaft, 0 aktuell, 0 übersprungen ==========
Wie kann ich die Abfrage richtig ausführen?