25/08/2005, 04:31
|
| | Fecha de Ingreso: mayo-2005
Mensajes: 68
Antigüedad: 19 años, 7 meses Puntos: 0 | |
En el código lo que tengo es lo siguiente:
Por un lado tengo el código de cada página, luego tengo dos módulos, uno para la clase conectada, y otro para la clase desconectada, que llaman a los métodos de estas clases.
Dentro de los módulos, en cada función creo un objeto de la clase que vaya a usar. Te pongo un trozo de código del módulo desconectado:
Public Function DevuelveRegistroUsuario(ByVal intIdUsuario As Integer, ByVal strCadConex As String) As DataRow
Dim registro As DataRow
objBD = New clsADODesc
registro = objBD.SacaRegistroUsuario(intIdUsuario, strCadConex)
Return registro
End Function
Public Function SacaTabla(ByVal strCadConex As String, ByVal strSQL As String, ByVal strNomTab As String) As DataTable
Dim tabla As DataTable
objBD = New clsADODesc
tabla = objBD.DevuelveTabla(strCadConex, strSQL, strNomTab)
Return tabla
End Function
Por lo pronto no se si será correcto crear en cada función un objeto, o debería crearlo en la página y pasarselo al módulo, para usar menos memoría, no se si esto puede influir en el fallo que me está dando.
Te pongo un trozo de la clase desconectada que he hecho, mas concretamente la función que me está fallando(ojo, esta función me falla solo cuando hay varios usuarios conectados):
Public Function SacaRegistro(ByVal strCadConex As String, ByVal strSQL As String) As DataRow
Dim cmdBuilder As SqlCommandBuilder
Dim registro As DataRow
Dim tabla As DataTable
Dim intX As Integer
conConexion = New SqlConnection(strCadConex)
Adaptador = New SqlDataAdapter(strSQL, conConexion)
ConjuntoDatos = New DataSet
cmdBuilder = New SqlCommandBuilder(Adaptador)
conConexion.Open()
'y rellenamos el dataset ConjuntoDatos
Adaptador.Fill(ConjuntoDatos, "tab")' falla aqui ******
'una vez rellenado el dataSet volvemos a cerrarla.
conConexion.Close()
tabla = ConjuntoDatos.Tables("tab")
registro = tabla.Rows(0)
Return registro
End Function
Pongo tabla.Rows(0), porque el resultado de la consulta devuelve un solo registro.
La consulta se ejecuta correctamente, y el dataset como puedes ver también lo tengo instanciado.
Por último, he estado leyendome lo del connection pooling, y lo que no tengo muy claro es en que zona del código debo poner lo de
Pooling=true
Pooling=yes
si ponerlo en cada función y procedimiento de la clase, o ponerlo en la zona de declaraciones de la clase...o donde?
Gracias por vuestra ayuda, saludos. |