Problema con dataset

11/08/2004 - 17:40 por Patricio Campos | Informe spam
Estoy creando un formulario en ASP.Net para ingresar datos a una base de
datos SQL Server 2000, y tengo el siguiente problema usando ADO.Net y Visual
Studio .Net 2003:

El formulario tiene dos botones. Al presionar el primero se llena un data
set (creado en el diseñador de webforms) y puedo acceder a las tablas y
filas desde el procedimiento del click del botón sin ningún problema.

Después necesito volver a acceder a los datos del dataset llenado pero
cuando presiono otro botón del formulario y aquí es donde tengo el problema.
Cuando intento acceder a los datos del dataset desde el procedimiento click
de este segundo boton no hay ninguna fila guardada, como si el dataset nunca
hubiese sido llenado en circunstancia que ya lo llené cuando presioné el
primer botón.

¿Por qué ocurre esto? Si alguien puede darme una orientación le agradecería
mucho!!!!

El código es el siguiente

Private Sub btnUNO_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnActualizar.Click

' verificar que se ha ingresado algún valor al cuadro de texto usuario

Try

SqlConexion.Open()

Catch ex As Exception

lblAdvertencia.Text = "No se puede abrir la base de datos. " + ex.Message

Exit Sub

End Try

' consulta a la base de datos

SqlDataAdapterUsuario = New Data.SqlClient.SqlDataAdapter("SELECT * FROM
Usuario WHERE Usuario = '" & txtUsuario.Text & "'", SqlConexion)

Try

SqlDataAdapterUsuario.Fill(ConjuntoDatos, "Usuario")

Catch ex As Exception

lblAdvertencia.Text = "No se ejecutar la consulta: " + ex.Message

Exit Sub

End Try

lblAdvertencia.Text = ConjuntoDatos.Tables("Usuario").Rows.Count --> Me
aparece 10

End Sub





Private Sub btnGuardarCambios_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnGuardarCambios.Click

lblAdvertencia.Text = ConjuntoDatos.Tables("Usuario").Rows.Count --> Me
aparece 0

End Sub

Preguntas similare

Leer las respuestas

#1 Patricio Campos
13/08/2004 - 16:36 | Informe spam
Gracias!!!!

Voy a interntarlo ahora mismo. Si me resulta te aviso

Patricio Campos
"Luis Miguel Cisneros L."
escribió en el mensaje news:%
Mostrar la cita
que
Mostrar la cita
datagrid
Mostrar la cita
guardardo
Mostrar la cita
se
Mostrar la cita
Me
Mostrar la cita
data
Mostrar la cita
ex.Message
Mostrar la cita
e
Mostrar la cita
#2 Patricio Campos
13/08/2004 - 16:46 | Informe spam
Pero ¿cómo puedo cargar el dataset en el Load de la página si los datos con
los que se carga solo los puedo obtener una vez que el usuario ingrese el
parámetro de búscada (le dé click al botón)?


"Luis Miguel Cisneros L."
escribió en el mensaje news:%
Mostrar la cita
que
Mostrar la cita
datagrid
Mostrar la cita
guardardo
Mostrar la cita
se
Mostrar la cita
Me
Mostrar la cita
data
Mostrar la cita
ex.Message
Mostrar la cita
e
Mostrar la cita
#3 Luis Miguel Cisneros L.
14/08/2004 - 06:37 | Informe spam
Hola!

En mi caso yo recibia de un QueryString los datos. entonces lo que puedes
hacer es guardar el dataset en en session como te indique en el ejemplo.

Saludos
Luis Cisneros
"Patricio Campos" wrote in message
news:%
Mostrar la cita
con
Mostrar la cita
puedes
Mostrar la cita
no
Mostrar la cita
e
Mostrar la cita
de
Mostrar la cita
y
Mostrar la cita
el
Mostrar la cita
FROM
Mostrar la cita
ByVal
Mostrar la cita
#4 Luis Miguel Cisneros L.
12/09/2004 - 03:33 | Informe spam
Hola!

Efectivamente, cuando das el segundo click, el dataset nunca existio, ya que
el estado de los objetos de cada pagina se pierde con cada post back.


yo resolvi cargando un nuevo dataset en el load de la pagina, pero puedes
hacerlo de otras varias manerasotra opcion es que serialices el datagrid
en un archivo xml que guardes con un nombre random en el servidor, guardardo
el nombre en el ViewState o en el Session.

la mas facil a mi parecer es guardar el dataset en el session, ahunque no se
que tan escalable es esto.



Private Sub btnUNO_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnActualizar.Click
...

lblAdvertencia.Text = ConjuntoDatos.Tables("Usuario").Rows.Count --> Me
aparece 10

Session("ConjuntoDatos") = ConjuntoDatos

End Sub

Private Sub btnGuardarCambios_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnGuardarCambios.Click

If Not Session("ConjuntoDatos") is Nothing then
lblAdvertencia.Text = DirectCast(ConjuntoDatos,
DataSet).Tables("Usuario").Rows.Count
End IF
End Sub

Saludos
Luis Miguel

"Patricio Campos" wrote in message
news:
Mostrar la cita
Visual
Mostrar la cita
problema.
Mostrar la cita
click
Mostrar la cita
nunca
Mostrar la cita
agradecería
Mostrar la cita
Me
Mostrar la cita
Me
Mostrar la cita
Ads by Google
Search Busqueda sugerida