Aunque esto, Javier, implique una modificación un poco más profunda de tu aplicación, debo decir que estoy totalmente de acuerdo con mi tocayo.
Tomalo en consideración. C.S. From: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Carlos Peix Sent: Friday, November 07, 2008 16:51 To: puntonet@mug.org.ar Subject: [puntonet] Error al ejecutar metodo contra Sybase. Javier, Veo que mencionas que estas guardando la conexion en la sesion y supongo que estas en una aplicacion Web. Si este es tu caso, esto no es muy recomendable, incluso diria que es una mala practica en general. esto se debe a multiples motivos pero creo que la escalabilidad es el mas relevante. Sugiero que utilices el siguiente modelo (en C# de memoria) using (OleDbConnection cn = new OleDbConnection(connectionString)) { OleDbCommand cm = new OleDbCommand("select .....", cn); OleDbDataAdapter da = new OleDbDataAdapter(cm); da.Fill(dataSet); } Del costo de hacer la conexion deberia encargarse el pool de conexiones, aunque no me queda claro el tema del limite de procedimientos que mencionaron. Saludos Carlos Peix _____ De: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] En nombre de Javier Osvaldo Chércoles Enviado el: Viernes, 07 de Noviembre de 2008 12:28 p.m. Para: puntonet@mug.org.ar Asunto: [puntonet] Error al ejecutar metodo contra Sybase. Mil gracias, muy buena tu ayuda. ----- Original Message ----- From: [EMAIL PROTECTED] To: puntonet@mug.org.ar Sent: Friday, November 07, 2008 11:28 AM Subject: [puntonet] Error al ejecutar metodo contra Sybase. Yo te recomendaría llamando el .Dispose() de todos los objetos que ejecutan cualquier acción sobre la base. Este método se encarga de liberar los recursos. Si no lo llamás explìcitamente, va a depender del proceso que el GC efectúa para seleccionar los objetos que elimina de la memoria. Esto no sucede de manera determinística y puede variar la cantidad de tiempo que el objeto quede en memoria tomando los recursos hasa que el GC invoque el .Finalize().