Archivos diarios: 07/02/2011

Los Helpers en C#


Los Helpers, son independientes del lenguaje, son archivos especializados que nos ayudan a crear, modificar, o eliminar cosas de manera externa a los procesos fundamentales hoy veremos este ejemplo de una manera muy simple diseñando un TablasHelper el cual nos ayudará a crear una tabla e incluso a llenarla mediante una lista es algo simple pero ejemplificará lo que necesitamos hacer.

Manos a la obra nuestro archivo se llamara TablasHelper.cs y su contenido será el siguiente:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using wsEjemplo;

namespace DataAccess2.Clases
{
public static class TablasHelper
{
public static DataTable CreaTablaUsuario()
{
DataTable dt = new DataTable();
DataColumn column;
column = new DataColumn();
column.DataType = Type.GetType("System.Int32");
column.ColumnName = "UsuarioId";
dt.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Correo";
dt.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Nombre";
dt.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Paterno";
dt.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Materno";
dt.Columns.Add(column);
return dt;
}

public static DataTable LlenaTablaUsuario(DataTable dt, List usuarios)
{
foreach (Usuario usuario in usuarios)
{
DataRow row = dt.NewRow();
row["UsuarioId"] = usuario.UsuarioId;
row["Correo"] = usuario.Correo;
row["Nombre"] = usuario.Nombre;
row["Paterno"] = usuario.Paterno;
row["Materno"] = usuario.Materno;
dt.Rows.Add(row);
}
return dt;
}
}
}

Después de eso solo resta mandarlos a llamar de la siguiente manera DataTable dt = TablasHelper.CreaTablaUsuario(); y ese mismo data table se usaría para llenar dt=TablasHelper. LlenaTablaUsuario(dt, usuarios); y listo