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

Hola a tod@s. Tengo un problema para conectarme a la bd desde una clase externa que estoy conpartiendo con todo el proyecto para no tener que crear la conexión en cada una de los formularios. La clase con la conexión es la siguiente
Código PHP:
Public Class Cconexion 
     
    
Public con As SqlConnection 
    Sub abrir
() 
        If 
IsNothing(con) Then 
            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(orden, con) 
        Return 
cmd.ExecuteNonQuery 
    End 
Function 
    Public Function 
consultar(ByVal orden As String) As SqlDataReader 
        abrir
() 
        
Dim cmd As New SqlCommand(orden, con) 
        Return 
cmd.ExecuteReader 
    End 
Function 
     
    Public Function 
escalar(ByVal orden As String) As Object 
        abrir
() 
        
Dim cmd As New SqlCommand(orden, con) 
        Return 
cmd.ExecuteScalar 
    End 
Function 
    Public Function 
consulta2(ByVal orden As String) As Data.DataTable 
        abrir
() 
        
Dim Tabla As New Data.DataTable 
        Dim cmd 
As New SqlCommand(orden, con) 
        
Dim da As New SqlDataAdapter(cmd) 
        
da.Fill(Tabla) 
        Return 
Tabla.Copy 
    End 
Function 
     
End Class 
y el formulario donde quiero hacer la conexión es (para rellenar el DataTable)
Código PHP:
Partial Class _Default 
    Inherits System
.Web.UI.Page 
    Dim conexion 
As New Cconexion 
    
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
        Dim respuesta 
As Integer = "4" 
         
        
Dim dt As New Data.DataTable 
        dt 
= Me.conexion.consulta2("select * from T_preguntas") 
        
Dim dt2 As New Data.DataTable 
        dt2 
= Me.conexion.consulta2("select * from T_respuestas") 
         

        
Me.lblsesion.Text = Session("alumno") 
        
Dim objCommandT As New SqlCommand(dt, objConexion) 
        
Dim objCommandR As New SqlCommand(dt2, objConexion) 
        
Dim objAdapterT As New SqlDataAdapter 
        Dim objAdapterR 
As New SqlDataAdapter 
        objAdapterT
.SelectCommand = objCommandT 
        objAdapterR
.SelectCommand = objCommandR 
        Dim objDs 
As New Data.DataSet 
        objAdapterT
.Fill(objDs, "Preguntas") 
        
objAdapterR.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 filaR, filaT 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 
En este caso me da el siguiente error. Muchas gracias
Cita:
Un valor de tipo System.Data.DataTable no se puede convertir en String