Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/09/2014, 20:16
Avatar de junior1920
junior1920
 
Fecha de Ingreso: noviembre-2010
Ubicación: Tumán
Mensajes: 77
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: clase de Conexion a BD Mysql

Hola yo realice dicha clase en Vb .Net. Lo primero que hice fue que en la capa presentación crear un archivo de configuración que lo puedes obtener desde agregar elementos
app.config
Código XML:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <configuration>
  3.   <configSections>
  4.   </configSections>
  5.   <connectionStrings>
  6.     <add name="CadenaConexion" connectionString="server=localhost;User Id=root;password=;database=control_vehicular"
  7.      providerName="MySql.Data.MySqlClient" />
  8.     <add name="PRESENTACION.My.MySettings.ConnectionString" connectionString="Dsn=CadenaConexion;uid=root"
  9.      providerName="System.Data.Odbc" />
  10.   </connectionStrings>
  11.   <system.web>
  12.     <membership defaultProvider="ClientAuthenticationMembershipProvider">
  13.       <providers>
  14.         <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
  15.       </providers>
  16.     </membership>
  17.     <roleManager defaultProvider="ClientRoleProvider" enabled="true">
  18.       <providers>
  19.         <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
  20.       </providers>
  21.     </roleManager>
  22.   </system.web>
  23. </configuration>

Ahora en la Capa Acceso de Datos. Creo la clase:
ConexionAD:
Código vb:
Ver original
  1. 'Imports System.Data.SqlClient
  2. Imports MySql.Data.MySqlClient
  3. Imports System.Configuration
  4. Public Class ConexionAD
  5.     Private Conexion As String
  6.     Public Sub New()
  7.         Try
  8.             Conexion = ConfigurationManager.ConnectionStrings("CadenaConexion").ConnectionString.ToString()
  9.         Catch ex As Exception
  10.             MsgBox(ex.Message)
  11.         End Try
  12.     End Sub
  13.     Public Function abrir() As MySqlConnection 'SqlConnection
  14.        'Dim cCon as SqlConnection =New SqlConnection(CadenaConexion)
  15.        'cCon="CadenaConexion="+ CadenaConexion + ""
  16.        'conexion=New SqlConnection(cCon)
  17.        Dim cCon As New MySqlConnection(Conexion) 'SqlConnection(Conexion)
  18.        Try
  19.             cCon.Open()
  20.             Return cCon
  21.         Catch ex As Exception
  22.             MsgBox(ex.Message, MsgBoxStyle.Critical, ex.Source)
  23.         End Try
  24.         Return cCon
  25.     End Function
  26. End Class

Y en la misma capa creo otra clase denominada:
ConductorAD:
Código vb:
Ver original
  1. 'Imports System.Data.SqlClient
  2. Imports MySql.Data.MySqlClient
  3. Imports System.Data.SqlTypes
  4. Imports ENTIDAD
  5. Public Class ConductorAD
  6.     Private conn As New MySqlConnection 'SqlConnection
  7.    Private conn1 As New MySqlConnection 'SqlCommand
  8.    Private comando As New MySqlCommand 'SqlCommand
  9. #Region "Cadena de conexion"
  10.     Public Sub New()
  11.         Dim Objconexion As New ConexionAD
  12.         conn = Objconexion.abrir
  13.         comando.Connection = conn
  14.     End Sub
  15. #End Region
  16.  
  17. #Region "Función convertir datos"
  18.     Private Shared Function Convertirdatos(ByVal reader As IDataReader) As ConductorEN
  19.         Dim conductor As New ConductorEN
  20.         conductor.idcond = LTrim(RTrim(Convert.ToInt32(reader(0))))
  21.         conductor.dni = LTrim(RTrim(Convert.ToString(reader(1))))
  22.         conductor.nomconductor = LTrim(RTrim(Convert.ToString(reader(2))))
  23.         conductor.apconductor = LTrim(RTrim(Convert.ToString(reader(3))))
  24.         conductor.departamento = LTrim(RTrim(Convert.ToString(reader(4))))
  25.         conductor.ciudad = LTrim(RTrim(Convert.ToString(reader(5))))
  26.         conductor.direccion = LTrim(RTrim(Convert.ToString(reader(6))))
  27.         conductor.tipolicencia = LTrim(RTrim(Convert.ToString(reader(7))))
  28.         conductor.fechacadulic = LTrim(RTrim(Convert.ToDateTime(reader(8))))
  29.         conductor.fechanac = LTrim(RTrim(Convert.ToDateTime(reader(9))))
  30.         conductor.telefono = LTrim(RTrim(Convert.ToString(reader(10))))
  31.         conductor.correo = LTrim(RTrim(Convert.ToString(reader(11))))
  32.         If Not IsDBNull(reader("foto")) Then
  33.             'If Not IsDBNull(reader(12)) Then
  34.            conductor.foto = DirectCast(reader("foto"), Byte())
  35.         End If
  36.         Return conductor
  37.     End Function
  38. #End Region
  39.  
  40. #Region "Función listar"
  41.     Public Function listaconductor() As List(Of ConductorEN)
  42.         Dim list As New List(Of ConductorEN)
  43.         Dim reader As MySqlDataReader 'SqlDataReader
  44.        Try
  45.             comando.CommandType = CommandType.StoredProcedure
  46.             comando.CommandText = "ListaConductor"
  47.             reader = comando.ExecuteReader
  48.             While reader.Read
  49.                 list.Add(Convertirdatos(reader))
  50.             End While
  51.             comando.Parameters.Clear()
  52.             Return list
  53.         Catch ex As Exception
  54.             MsgBox(ex.Message, MsgBoxStyle.Critical, ex.Source)
  55.             Throw New Exception("Error: ConductorAD-->Listado() " + ex.Message, ex)
  56.         Finally
  57.             comando.Parameters.Clear()
  58.             conn.Close()
  59.             conn.ClearAllPools()
  60.             conn = Nothing
  61.         End Try
  62.     End Function
  63. #End Region
  64. End Class

Ojala te pueda haber ayudado.