Mostrar Datos de Class Library

26/07/2004 - 16:34 por Mauricio Henao Romero | Informe spam
Hola a todos.

Quisiera hacer una consulta de tipo URGENTE.

Veran, tengo un proyecto de tipo Class Library, donde
tengo funciones como:
Public Sub IngresoTabla
Public Sub EditaTabla
Public Overloads Function MuestraTabla as As SqlDataReader
Public Sub BorraTabla

Como ven, Este proyecto tiene todos los movimientos
basicos para realizar en una tabla.

Por otro lado (en carpeta aparte), tengo un proyecto VB de
tipo WebApp.

Alli tengo un formulario, ese formulario tiene un boton
con el siguiente codigo:

Private Sub Page_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load
Response.Buffer = True
Dim dr As SqlDataReader
Try
dr = objDatos.MuestraTabla
Catch ex As Exception
Mensaje(ex.Message)
Exit Sub
End Try
TextBox1.Text = Trim(dr.GetString(0))
End Sub

La pregunta es:
Donde estoy fallando ?
Se supone que el formulario (en su evento LOAD) deberia
llamar la funcion MuestraTabla, alli deberia hacer lo
siguiente:

Public Overloads Function MuestraTabla() As SqlDataReader
_sentenciaSQL = "exec StoreProcedure"
objCommand.CommandText = _sentenciaSQL
objCommand.CommandType =
CommandType.StoredProcedure
Dim dr As SqlDataReader = objCommand.ExecuteReader
Return dr
End Function

Pero no me esta mostrando nada.
Como hago entonces, para que desde una Class Library
(Imports MiClass), pueda mostrar los datos del
procedimiento en en TextBox ?

Se que a lo mejor pueda ser una tonteria, pero no doy mas :
(

A todos, mil y mil gracias.

Preguntas similare

Leer las respuestas

#6 Mauricio Henao
26/07/2004 - 20:31 | Informe spam
Tienes razon en el punto tres (3)

Ya lo he cambiado asi:

Public Overloads Function MostrarTblParametros() As
SqlDataReader
objCommand = New SqlCommand
objCommand.CommandText = "SpCe_BuscarConfig"
objCommand.CommandType =
CommandType.StoredProcedure
Dim dr As SqlDataReader
dr = objCommand.ExecuteReader()
Return dr
End Function

Pero ahora me sale:

ExecuteReader: Connection Property has not been initialized

Ok, por lo que entiendo, debo inicializar la propiedad de
la conexion, pero que es eso?, como lo hago ?

Veras, apenas tengo dias con .NET y hay mucho que debo
aprender.

Gracias de nuevo.
Mostrar la cita
tanto dr no tiene
Mostrar la cita
#7 Eduardo A. Morcillo [MS MVP VB]
27/07/2004 - 01:36 | Informe spam
Mostrar la cita
No le has asignado ninguna conexion al comando. Lo que tienes que hacer es
crear un objeto SqlConnection con la cadena de conexion a la base de datos
(no se si ya lo tengas creado) y asignarlo al comando:

Dim dr As SqlDataReader

objCommand = New SqlCommand
objCommand.Connection = objConexion ' objConexion es tu instancia de
SqlConnection
objCommand.CommandText = "SpCe_BuscarConfig"
objCommand.CommandType = CommandType.StoredProcedure

' Antes de llamar a ExecuteReader debes abrir la conexion
' la cual debe mantenerse abierta mientras uses el datareader.
objConexion.Open

' Utiliza CommandBehavior.CloseConnection para que
' al cerrar el datareader este cierre la conexion
dr = objCommand.ExecuteReader(CommandBehavior.CloseConnection)

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
#8 Mauricio Henao Romero
27/07/2004 - 16:07 | Informe spam
Gracias Eduardo, TODO me ha funcionado de maravilla.

Saludos.


Mostrar la cita
de
Mostrar la cita
tienes que hacer es
Mostrar la cita
la base de datos
Mostrar la cita
instancia de
Mostrar la cita
datareader.
Mostrar la cita
(CommandBehavior.CloseConnection)
Mostrar la cita
Ads by Google
Search Busqueda sugerida