Option Strict On Public Class frmListarAutos Private Sub btnListar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnListar.Click
lsvAutos.Items.Clear()
Dim unaC As New clsControladora
Dim laColeccion = unaC.listarAutos()
Dim lsvA As New ListViewItem
For Each unA As clsAuto In laColeccion
lsvA = lsvAutos.Items.Add(unA.matricula) lsvA.SubItems.Add(unA.marca) lsvA.SubItems.Add(unA.modelo) lsvA.SubItems.Add(unA.anio) lsvA.SubItems.Add(unA.combustible) Next End Sub End Class CLASE clsControladora (capa Lógica o Domino) Public Class clsControladora
Public Function listarAutos() As ArrayList
Dim unA As New clsAuto Return unA.listarAutos() End Function
End Class
CLASE clsAuto (capa Lógica o Domino)
Public Class clsAuto
Public Function listarAutos() As ArrayList
Dim unPAuto As New clsPAuto Return unPAuto.listarAutos() End Function End Class
CLASE clsPAuto (capa de Persisitencia)
Imports MySql.Data.MySqlClient Public Class clsPAuto Inherits clsPersistencia Public Function listarAutos() As ArrayList Dim consulta As String Dim colAutos As New ArrayList consulta = "SELECT * FROM autos" Dim datosAutos = ejecutarYdevolver(consulta) While datosAutos.Read() colAutos.Add(crearAuto(datosAutos)) End While Return colAutos End Function
Private Function crearAuto(ByVal datosDeUnAuto As MySqlDataReader) As clsAuto
Dim unAuto As New clsAuto unAuto.matricula = datosDeUnAuto.Item("matricula").ToString unAuto.marca = datosDeUnAuto.Item("marca").ToString unAuto.modelo = datosDeUnAuto.Item("modelo").ToString unAuto.anio = CInt(datosDeUnAuto.Item("anio").ToString) unAuto.combustible = datosDeUnAuto.Item("combustible").ToString Return unAuto End Function