Hallo,
in einem Prozess lese ich alle Zeilen einer Tabelle "user". Dazu öffne ich ein Verbindung zum DB Server, die ich am Ende des Prozesses wieder schliesse. (siehe Funktion GetList()).
Das funktioniert auch gut.
Das Problem ist, Der DB Server kriegt es nicht mit, wenn ich die Verbindung schliesse. Sie bleibt solang offen, bis die Anwendung beendet wird.
Dh. wenn ich 100 Instanzen dieser Anwendung starte habe ich 100 offene Verbindungen zum DB Server.
Weiss jemand, wie ich dem Server dies besser mitteilen kann? Danke!
public List<user> GetList() {
List<user> ll = new List<user>();
string connString = "Data Source=127.0.0.1;Initial Catalog=DB11;Persist Security Info=True;User ID=sa;Password=123456;";
using (MySqlConnection conn = new MySqlConnection(connString)) {
using (MySqlCommand command = new MySqlCommand("select * from user", conn)) {
conn.Open();
using (MySqlDataReader rd = command.ExecuteReader()) {
while (rd.Read()) {
user u = new user();
u.Fname = rd["fname"].ToString();
u.Lname = rd["lname"].ToString();
ll.Add(u);
}
rd.Close();
}
conn.Close();
conn.Dispose();
return ll;
}
}
}
in einem Prozess lese ich alle Zeilen einer Tabelle "user". Dazu öffne ich ein Verbindung zum DB Server, die ich am Ende des Prozesses wieder schliesse. (siehe Funktion GetList()).
Das funktioniert auch gut.
Das Problem ist, Der DB Server kriegt es nicht mit, wenn ich die Verbindung schliesse. Sie bleibt solang offen, bis die Anwendung beendet wird.
Dh. wenn ich 100 Instanzen dieser Anwendung starte habe ich 100 offene Verbindungen zum DB Server.
Weiss jemand, wie ich dem Server dies besser mitteilen kann? Danke!

public List<user> GetList() {
List<user> ll = new List<user>();
string connString = "Data Source=127.0.0.1;Initial Catalog=DB11;Persist Security Info=True;User ID=sa;Password=123456;";
using (MySqlConnection conn = new MySqlConnection(connString)) {
using (MySqlCommand command = new MySqlCommand("select * from user", conn)) {
conn.Open();
using (MySqlDataReader rd = command.ExecuteReader()) {
while (rd.Read()) {
user u = new user();
u.Fname = rd["fname"].ToString();
u.Lname = rd["lname"].ToString();
ll.Add(u);
}
rd.Close();
}
conn.Close();
conn.Dispose();
return ll;
}
}
}