# Patrón simple para el bloque de aplicaciones de acceso a datos

<datetime class="hidden">2006-09-08T00:00</datetime>

<!-- category -- mostlylucidcouk, Imported -->
## 

Patrón simple para el bloque de aplicaciones de acceso a datos

Publicado el viernes, 27 de agosto de 2004 a las 13:38

Pensé en tirar una simple muestra de código para el (muy) patrón simple que utilizo al escribir el código de acceso a los datos con el [Bloque de aplicaciones de acceso a datos](http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp). Este ejemplo es para hacer una inserción de objeto simple (no transaccional) en una DB:

vacío estático interno AddEmailDirecciónToContact(Int64 contactId, EmailDirección emAddr)

{

string spName = "pr\_MedSh\_AddEmailAddressToContact";

SqlParameter[] sqlParams = SqlHelperParameterCache.GetSpParameterSet(Global.Config.DBConnectionString,spName);

sqlParams[0].Value = contactId;

sqlParams[1].Valor = emAddr.DirecciónTypeId;

sqlParams[2].Valor = emAddr.IsPrimary;

sqlParams[3].Value = emAddr.Address;

SqlHelper.EjecutarNonQuery(Global.Config.DBConnectionString,CommandType.StoredProcedure,spName,sqlParams);

}

¡Te dije que era simple! Este es el patrón que utilizo para todo este tipo de cosas. Usar un SqlDataReader es igual de fácil, envuelvo el 'SqlDataReader dr = SqlHelper.EjecutarReader' en un bloque 'usando' y muy recrudecientemente pasarlo entre capas, prefiriendo usar colecciones simples personalizadas o ArrayLists.