J'utilise SubSonic 2.1 et entcountered un problème lors de l'exécution d'une transaction avecSubSonic: MySqlDataReader ferme la connexion
SharedDbConnectionScope et TransactionScope. Le problème est que dans la méthode obj.Save() Je reçois un « La connexion doit être valide et ouvrir » exception
Je traqué le problème à cette ligne:
// Loads a SubSonic ActiveRecord object
User user = new User(User.Columns.Username, "John Doe");
dans ce constructeur de la classe utilisateur une méthode « LoadParam » est appelée, qui fait finalement
if (rdr != null)
rdr.Close();
on dirait que le rdr.Close() ferme implicitement ma connexion qui est bien lorsque vous utilisez le AutomaticConnection. Mais lors d'une transaction, il n'est habituellement pas une bonne idée de fermer la connexion :-)
Ma question est de savoir si cela est voulu ou s'il s'agit d'une erreur dans MySqlDataReader.