Inicio > Uncategorized > Mejorar el rendimiento del DataReader

Mejorar el rendimiento del DataReader

Viernes, 13 de abril de 2007 Dejar un comentario Ir a comentarios

Una de las formas de trabajar con acceso a datos en .Net es a través del uso de los DataReaders, que son una suerte de tablas con los datos cargados desde la Base de datos y que permite hacer un desplazamiento hacia adelante, la ventaja de esta clase es que es bastante rápida para trabajar, lo cual ayuda en el proceso de desarrollo.

Esta es una forma recomendable para trabajar con un SqlDataReader:

using(SqlDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult | CommandBehavior.CloseConnection))
{
//Escriba aquí su código
}

El bloque using puede ser utilizado con cualquier objeto que implemente la interfaz IDisposable, esto significa que cualquier objeto que tenga el método Dispose puede ser incluído en el bloque using, el cual se utiliza para garantizar que el sistema desecha un recurso cuando su código sale del bloque, de esa manera nos aseguramos que ya no se usará y que liberaremos recursos. Por esta razón el objeto reader se declara al usar el bloque using, de esa manera nos aseguramos de que al terminar el bloque, se cierre y se “disposea” el objeto.

El otro punto es el uso de las ennumeraciones CommandBehavior al ejecutar el objeto command que devolverá el reader, en este caso, cuando se le indica SingleResult el objeto reader sabe que el objeto command solo devolverá un conjunto de resultados, es decir, solo una instrucción SELECT (hay ocasiones en las que un Stored Procedure devuelve mas de una instrucción select), y al indicarle CloseConnection le estamos indicando que en cuanto se cierre el objeto reader se debe cerrar la conexión.

Espero que estos tips les ayuden en su trabajo, ya me había alejado bastante de escribir código, así que trataré de dedicarle más tiempo.

Saludos.

PD: Disposea = Utilizar el método Dispose de un objeto. No es una palabra que exista, pero la escuché de un expositor Microsoft que a su vez la escuchó de otro expositor Colombiano y le agrado como sonaba y como a mí me agradó como suena, la utilicé, pero realmente no existe ni en inglés, ni en español ni en programación.

Categories: Uncategorized
  1. Angel
    Viernes, 2 de abril de 2010 a las 00:20 | #1

    que tal profe..estaba haciendo hora y llege a su pagina ..jejeje atte;angel sanchez

    del inst sise ! .

  1. Jueves, 2 de agosto de 2007 a las 14:50 | #1