Hola gente, estoy dandole un poco a C# estos días. Suponiendo una estructura como la de la siguiente solución:
Cita: Solución:
"nTier"
Proyectos:
"DAL" (Data Access Layer)DB.cs (Conecta a la base de datos)
Usuario.cs (Hace de entidad de un Usuario)
"BLL" (Bussiness Logic Layer)Usuario.cs (Lógica para la entidad de un Usuario)
"PL" (Presentation Layer)Usuario.cs (Formulario para un Usuario)
[/INDENT]
Entonces, en una arquitectura nTier, en un programa de 3 capas...
La capa de presentación no debería tener acceso directo a la capa de datos. Pero de alguna forma debemos pasar esos datos entre las capas.
He presupuesto las referencias/dependencias de los proyectos. PL -> BLL -> DAL
Entonces, yo podría leer las propiedades de la entidad "DAL.Usuario" desde "BLL.Usuario" y "PL.Usuario" recibirlas de esta última capa.
PERO... se me ocurren dos formas de hacerlo. Y cuestiono la validez de hacerlo por herencia.
Si "BLL.Usuario" heredase de "DAL.Usuario", podría reemplazar las variables de la clase hija por las de la clase padre... De forma que las propiedades de "BLL.Usuario" obtendrían directamente los valores de las propiedades de "DAL.Usuario".
PERO... ¿ Es esto conceptualmente correcto. Habría relación de parentesco entre esas dos clases ?
SINÓ... Se me ocurre que se podría hacer simplemente haciendo metodos que asignen debidamente las propiedades de una capa a otra.
Espero haberme explicado correctamente y que se entienda. Me gustaría saber vuestra opinión. Y si plantearíais la forma de trabajar con 3 capas de otra forma que a lo mejor yo por ignorancia/desconocimiento ni contemplo.
Gracias a todos !!!!!!!!!!