Arquitectura en 3 capas VB.NET

Páginas: 7 (1631 palabras) Publicado: 9 de julio de 2014
DESARROLLO EN TRES CAPAS .NET
La arquitectura de tres capas se basa en la división en el nivel de acceso a datos, nivel
de lógica de negocio y nivel de presentación o aplicación.
A modo de ejemplo sencillo, para llenar un ListView en VB.NET, en el nivel más básico
podemos crear una clase de acceso a datos con la conexión a la base de datos y los métodos
de selección, modificación yeliminación de datos. En el nivel medio, implementaremos los
métodos que gestionará la comunicación de datos entre las capa de presentación y de acceso
a datos. Por último, en la capa de presentación, nos preocuparemos únicamente de hacer la
petición de datos a negocio y de mostrarlos en los controles que queramos (en este caso un
ListView).
He realizado una codificación muy básica (puede complicarsemás, ya que normalmente
nos interesará emplear fragmentos de código para diversas clases y, por lo tanto, tendremos
subcapas y herencia) con un método de selección para un ejemplo de una tabla que
contiene datos de diversos países (cuyos campos son “id” y “país”).

Capa de Acceso a Datos
Éste sería el código para la capa de datos:
Public Class DPaises
#Region " - Tipos de Datos - "
PublicEnum tFiltro
cfAnd = 1
cfOr
End Enum
Public Enum tOrden
coAsc = 1
coDesc
End Enum
#End Region
#Region " - Variables - "
' - Datos para la conexión con el Servidor BD Private cadenaConexion As String = "Data Source= servidorBD;Initial Catalog= baseDatos;Persist
Security Info=True;User ID= usuario;password = contraseña"
Friend Shared ReadOnly identificador As String = "id"
Friend SharedReadOnly pais As String = "pais"
#End Region
#Region " - Métodos Públicos - "
' - Devolverá a la capa de negocio el listado de países registrados
' en la BD, atendiendo al filtro y órden indicados por parámetro Public Function getLista(ByVal filtro As String, ByVal orden As String) As DataTable
' - Generamos la Consulta SQL Dim nombreTabla As String = "paises"
Dim cadena As String =DPaises.getConsulta(nombreTabla, filtro, orden)
' - Devolvemos un DataTable con el resultado de la Consulta Return Me.fillTabla(cadena)
End Function
#End Region

1 DESARROLLO EN TRES CAPAS .NET

#Region " - Métodos Privados - "
'- Devolverá un DataTable con el resultado de la consulta pasada por parámetro Private Function fillTabla(ByVal consulta As String) As DataTable
' - Ejecutamos laConsulta Dim tablaDT As New DataTable
Dim adaptadorDA As New SqlClient.SqlDataAdapter(consulta, Me.cadenaConexion)
' - Llenamos el DataTable adaptadorDA.Fill(tablaDT)
adaptadorDA.Dispose() ' - Liberamos memoria Return tablaDT
End Function
#End Region
#Region " - Métodos Shared - " ' - No necesitan instanciar la clase ' - Genera la consulta Private Shared Function getConsulta(ByVal nombreTabla AsString, ByVal filtro As String, ByVal orden
As String) As String
Dim cadena As String = "SELECT * FROM " & nombreTabla
Dim consulta As New System.Text.StringBuilder(cadena)
' - En caso de existir filtro lo añade If Not String.IsNullOrEmpty(filtro) Then
consulta.Append(" WHERE " & filtro)
End If
' - En caso de existir criterio de ordenación lo añade If Not String.IsNullOrEmpty(orden) Thenconsulta.Append(" ORDER BY " & orden)
End If
Return consulta.ToString
End Function
' - Filtra un campo numérico Public Shared Function filtrar(ByVal nombreCampo As String, ByVal valor As String) As String
Return nombreCampo & " = " & valor
End Function
' - Filtra un campo de tipo String (búsquedas de tipo Like) Public Shared Function filtrarCadena(ByVal nombreCampo As String, ByVal valor AsString) As String
Return nombreCampo & " LIKE '%" & valor & "%'"
End Function
' - Devuleve una cadena con la concatenación de varios filtros Public Shared Function addFiltro(ByVal filtro1 As String, ByVal filtro2 As String, ByVal tipoCondicion
As tFiltro) As String
Dim filtro As String = String.Empty
Select Case tipoCondicion
Case tFiltro.cfAnd ' - Filtro de tipo AND (intersección) filtro...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Arquitectura De 3 Capas
  • Arquitectura 3 Capas
  • Arquitectura 3 Capas
  • Arquitectura por capas
  • Arquitecturas De Capas
  • Capa 3 Capa de RED
  • Cap 3
  • Cap 3

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS