Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/02/2010, 18:14
igonfil
 
Fecha de Ingreso: junio-2008
Mensajes: 250
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: Problema con la conexión a la bd desde una clase

Por fin consegui lo que buscaba el codigo es el siguiente:
Aquí tenemos la clase en la que hacemos las conexiones
Código PHP:

Public Class Cconexion
    
    
Public con As SqlConnection
    Sub abrir
()
        If 
IsNothing(conThen
            con 
= New SqlConnection(ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString)
            
con.Open()
        
End If
    
End Sub
    
Public Function ejecutar(ByVal orden As String) As Integer
        abrir
()
        
Dim cmd As New SqlCommand(ordencon)
        Return 
cmd.ExecuteNonQuery
    End 
Function
    Public Function 
consultar(ByVal orden As String) As SqlDataReader
        abrir
()
        
Dim cmd As New SqlCommand(ordencon)
        Return 
cmd.ExecuteReader
    End 
Function
    
    Public Function 
escalar(ByVal orden As String) As Object
        abrir
()
        
Dim cmd As New SqlCommand(ordencon)
        Return 
cmd.ExecuteScalar
    End 
Function
    
    Public Function 
consulta2(ByVal orden As String) As SqlDataAdapter
        abrir
()
        
Dim cmd As New SqlCommand(ordencon)
        
cmd.Connection Me.con
        Dim da 
As SqlDataAdapter = New SqlDataAdapter
        da
.SelectCommand cmd
        Dim datos 
As Data.DataTable = New Data.DataTable
        cmd
.ExecuteNonQuery()
        
da.Fill(datos)
        Return 
da
    End 
Function    
End Class 
Y en este otro código tenemos el código del Page_load donde tenemos el Tabla
Código PHP:
    Protected Sub Page_Load(ByVal sender As ObjectByVal e As System.EventArgsHandles Me.Load
        Dim respuesta 
As Integer "4"
        
        
Dim rs1 As New SqlDataAdapter
        rs1 
Me.conexion.consulta2("select * from T_preguntas")
        
Dim rs2 As New SqlDataAdapter
        rs2 
Me.conexion.consulta2("select * from T_respuestas")
        
Me.lblsesion.Text Session("alumno")        
        
Dim objDs As New Data.DataSet
        rs1
.Fill(objDs"Preguntas")
        
rs2.Fill(objDs"Respuestas")
        
Dim relacion As Data.DataRelation objDs.Relations.Add("Examen"objDs.Tables("Preguntas").Columns("c_idpregunta"), objDs.Tables("Respuestas").Columns("c_Pregunta"))
        
Dim filaRfilaT As Data.DataRow
        
For Each filaR In objDs.Tables("Preguntas").Rows
            Response
.Write("<br>" filaR("c_Pregunta").ToString)
            For 
Each filaT In filaR.GetChildRows(relacion)
                
Response.Write("<br>" filaT("c_Respuestas").ToString)
            
Next
        Next
    End Sub
End 
Class 
Se puede reducir más el código añadiendo un solo rs con un inner join pero eso tengo que mirarlo