Je remarque que vous ouvrez des connexions, mais que vous ne les fermez pas lorsque vous en avez terminé. Je préfère l'approche consistant à ouvrir les connexions lorsqu'elles sont nécessaires, plutôt que de les ouvrir éventuellement si elles ne sont pas déjà ouvertes. Ils peuvent être obsolètes.
Mettez en cache la chaîne de connexion mais pas la connexion elle-même.
public static string ConnectionString {get;set;}
public static bool InsertRecord(sql)
{
bool success = false;
using (var con = new Connection(ConnectionString)){
var command = new SqlCommand(sql,con);
success = (command.ExecuteNonQuery() > 0);
}
return success;
}
Les ressources doivent être libérées lorsqu'elles ne sont plus nécessaires.