Foros del Web » Programando para Internet » ASPX (.net) »

Control Personalizado y conexion a BD

Estas en el tema de Control Personalizado y conexion a BD en el foro de ASPX (.net) en Foros del Web. Que tal, Estoy desarrollando controles personalizados del tipo composite control, los cuales deben ir conectados a datos de una tabla de una BD. El problema ...
  #1 (permalink)  
Antiguo 10/05/2010, 09:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Pregunta Control Personalizado y conexion a BD

Que tal,

Estoy desarrollando controles personalizados del tipo composite control, los cuales deben ir conectados a datos de una tabla de una BD.

El problema es que como el control será generico, es decir, la dll creada dede poder integrarse a cualquier proyecto asp.net, entonces debo integrar a mi control un mecanismo para que el dsarrollador ingrese la cadena de conexión.

Por ejemplo:

Si en mi contro existe un dropDownList, mi control debe tener un mecanismo para que el desarrolaldor pueda ingresar la cadena de conexion de La BD a la que se va conectar.

Alquien tiene laguna idea??

Por su atención. Mil Gracias.
  #2 (permalink)  
Antiguo 10/05/2010, 11:16
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

Buenas. Sí creando un propiedad pública de esta manera:

Código vb:
Ver original
  1. ''' <summary>
  2.        ''' Establece u obtiene la cadena de conexión al origen de datos.
  3.        ''' </summary>
  4.        ''' <value></value>
  5.        ''' <returns></returns>
  6.        ''' <remarks></remarks>
  7.        <Description("Establece u obtiene la cadena de conexión al origen de datos."), _
  8.         Category("Datos")> _
  9.         Public Property CadenaConexion() As String
  10.             Get
  11.                 Return _cadenaConexion
  12.             End Get
  13.             Set(ByVal value As String)
  14.                 _cadenaConexion = value
  15.             End Set
  16.         End Property
Aparecerá en el apartado Propiedades del control, dentro de una categoría llamada "Datos". Espero que te sirva.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #3 (permalink)  
Antiguo 10/05/2010, 11:42
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Sonrisa Respuesta: Control Personalizado y conexion a BD

AGradezco su respuesta.

y si, habia pensado en una propiedad, pero las unicas que he usado son:
las virtual string para etiquetas, donde me permite en la propiedad de la etiqueta cambiar el texto de la misma.

Sería esto de la misma manera?

El código que me ha adjuntado iria dentro d ela clase o sería un script independiente?

Saludos. y gracia snuevamente.
  #4 (permalink)  
Antiguo 10/05/2010, 11:56
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

El código has de añadirlo dentro de la clase.

Esta propiedad la puedes modificar desde la propia etiqueta del control o desde código.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #5 (permalink)  
Antiguo 11/05/2010, 12:55
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Control Personalizado y conexion a BD

Hola Bravenap:

Agradezco tu ayuda :D me funcinó!!

me ha creado una nueva propiedad del control en la pestaña de datos, pero ahora quiero saber si esta cadena la puedo manipular desde la clase del control o debo tener una nueva clase para hacer la conexion??


Saludos:D
  #6 (permalink)  
Antiguo 11/05/2010, 23:41
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

Me alegro de que te funcione.

La propiedad es pública y no es de sólo lectura, por lo que la puedes manipular tanto desde dentro de la clase como desde cualquier parte en la que instancies la clase. De todas formas, ¿qué es exactamente lo que quieres hacer? No entendí muy bien eso de tener una nueva clase para hacer la conexión.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #7 (permalink)  
Antiguo 12/05/2010, 12:24
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Control Personalizado y conexion a BD

A lo que me refiero es que si puedo hacer una clase para la conexión que sea independiente, es decir, como todos lso controles o la mayoria usaran datos de las las tablas de la BD, tener una clase que haga la conexión que se encuentre por ejemplo en conexión.cs y que desde control.cs llame a dicha clase.

Bueno, ya la estoy desarrollando independiente, y estoy en la prueba solo que tengo un problemilla.

ya me conecta con el servidor (sql 2005) y todo solo que la obetner los valores de una columna, en lugar de ponerme el valor me pone "System.Data.DataRow" para todos mis regsitros....

Te agrego mi codigo haber si le puedes dar una mirada.

Gracias y saludos.


este metodo lo uso para inprimir los resultados del query:

public void pintarTabla() {
for (int i = 0; i < tblPrueba.Rows.Count; i++)
{
Console.WriteLine("Nombre: " + tblPrueba.Rows[i].ToString());
}

y el resultado es:

Nombre: System.Data.DataRow
Nombre: System.Data.DataRow
Nombre: System.Data.DataRow
....
  #8 (permalink)  
Antiguo 13/05/2010, 01:34
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

Sí, claro que puedes hacer una clase independiente para las conexiones de datos. Es más. a mi juicio es hasta lo más recomendable.

Por otro lado, te respondo a tu pregunta aunque es mejor que hubieras abierto un tema nuevo, ya que el asunto cambia.

Con tblPrueba.Rows[i] accedes a la fila de índice i de la tabla, pero no a los campos que esta contiene. Debes utilizar:

tblPrueba.Rows[i].Item[n] siendo en el índice de la columna o tblPrueba.Rows[i].Item["NombreColumna"] si sabes el nombre de la columna:
public void pintarTabla() {
Código C#:
Ver original
  1. for (int i = 0; i < tblPrueba.Rows.Count; i++)
  2. {
  3. Console.WriteLine("Nombre: " + tblPrueba.Rows[i].Item["Nombre"].ToString());
  4. }
Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #9 (permalink)  
Antiguo 13/05/2010, 13:37
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Control Personalizado y conexion a BD

Ahora me arca un error y esque Item no es un metodo valido, solo existe ITEMARRAY, pero me marca errror tambien:

Console.WriteLine("Nombre: " + tblPrueba.Rows[i]..Item["Nombre"].ToString());
  #10 (permalink)  
Antiguo 14/05/2010, 00:10
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

Es verdad, no había caido en el matiz de C#. Prueba esto otro:

Código C#:
Ver original
  1. Console.WriteLine("Nombre: " + tblPrueba.Rows[i]["Nombre"].ToString());
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #11 (permalink)  
Antiguo 14/05/2010, 08:53
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Control Personalizado y conexion a BD

Gracias. Me ha Funcionado a la perfección :D
  #12 (permalink)  
Antiguo 17/05/2010, 04:37
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 4 meses
Puntos: 4
Respuesta: Control Personalizado y conexion a BD

De nada, para lo que quieras.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!

Etiquetas: bd, conexion, control, personalizacion, aspx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:04.