5.06.2009

El Entity Framework en una Arquitectura n-layer – Parte 4

En el post anterior iniciamos el desarrollo de la capa de UI utilizando WPF como tecnología. En este post vamos a continuar agregando funcionalidad al UI del sistema que estamos desarrollando.

En esta oportunidad, vamos a agregar una pantalla para ver todos los usuarios que hemos insertado dentro de la aplicación.

Creando la Pantalla de Administración de Usuarios

El primer paso es crear una nueva pantalla en el proyecto y llamarla AdministracionDeUsuarios. Esta pantalla va a tener un grid el cual nos va a presentar todos los usuarios que existen en nuestra aplicación. El grid que vamos a utilizar es el DataGrid del toolkit de WPF. A este datagrid le vamos a llamar dgUsuarios. Una vez creada la pantalla esta lucirá de la siguiente forma:

image

El siguiente paso es llenar el datagrid con los datos de usuarios que tenemos incluidos en nuestra base de datos. Para lograr esto vamos a utilizar el método ObtenerUsuarios de nuestra clase de lógica de negocios para el usuario. El código para llevar a cabo esta tarea es el que se presenta a continuación:

using System.Windows;
using LogicaDeNegocios;

namespace Cliente_WPF
{
public partial class AdministracionDeUsuarios : Window
{
public AdministracionDeUsuarios( )
{
InitializeComponent( );
}

private void Window_Loaded( object sender, RoutedEventArgs e )
{
UsuarioBL usuarioBL = new UsuarioBL( );
dgUSuarios.ItemsSource = usuarioBL.ObtenerUsuarios( );

}
}
}



Como se puede ver en el código anterior, solamente necesitamos crear una instancia de la clase UsuarioBL y ligar el datagrid con los datos que nos retorna el método ObtenerUsuarios el cual definimos en el post 2 de esta serie. Si ejecutamos la aplicación poniendo como forma de arranque la forma recién creada el resultado será el siguiente:



image



Como podemos ver en la imagen anterior, no solo se presentan los datos propios de la entidad en el grid, si no las relaciones existentes entre el usuario y el historial de casos de uso, el estado de la entidad que es utilizado para persistir cambios en el back end, y la llave de la entidad.



En el próximo post vamos a trabajar mejorando la presentación de este datagrid.



Technorati Tags: ,,,

2 comentarios:

Alexis dijo...

Hola, Interezante tu articulo sobre EF, existe alguna forma de enlazar el Gridview con un control (bindingsource) o algo parecido, para poder manejar las columnas?
Sldos.

Jm dijo...

Bueno ha estado excelente esto por lo menos para aprender algo, normalmente la informacion esta mucho mas escondida jajajaja, tengo una duda con el ADO.net q utilizamos para enlazar con la Base de Datos, como hacemos para que funcione de otra PC la aplicación? lo q quiero es mandarle esta aplicacion a alguien por msn y q se pueda conectar a la BD que esta en mi PC, en donde debo especificar esto?