Feliz Año.

Comenzamos una etapa nueva, para seguidores y nuevos en este blog lo tomaremos de nuevo de tal forma que el contenido sera actualizado sin borrar las entradas viejas, hemos estado enfocados en otras áreas de mi nuevo trabajo un trabajo que hace cinco años emprendi.

Con lo cual deje abandonado este blog pero vamos a escribir nuevos post siempre enfocados en el área que tanto me aficiona que es lo que mas me ha dado e comer y con el cual e podido salir adelante gracias adios.

En mi primer post lo dedicare para dar las gracias por visitarlo…

COUNT() VS. ANY()

En mi trabajo me tope con la necesidad de saber si una consulta devuelve registro a través de una lista para implementarla; a través de una condición yo determino si los trae. En esta época que los Frameworks nos proporcionan tantas formas de abstracción, con lo cual podemos hacer lo mismo de tantas formas diferentes me tope con estos dos métodos. Los cuales me permiten saber si una listas contienen elementos o trae elementos.

Dada una listas cualquiera veamos su funcionamiento:

 List<string> _dias = new List<string>();
            _dias.Add("lunes");
            _dias.Add("martes");
            _dias.Add("miércoles");
            _dias.Add("jueves");
            _dias.Add("viernes");
            _dias.Add("sábado");
            _dias.Add("domingo");

Con esta lista puedo comprobar la existencia de elementos dentro de ella de estas dos formas:

  var contElemtCount = _dias.Count() > 0;
  var contElemtAny = _dias.Any();

las dos formas me devolverán True si hay datos dentro de la lista, hasta aquí todo claro pero veamos cómo funciona cada una para decidir cual me conviene.

Primero como funciona el Count(), según el MSDN veremos que dice claramente, “Si el tipo de source implementa ICollection<T>, esa implementación se utiliza para obtener el recuento de elementos. De lo contrario, este método determina el recuento.”

Según entiendo; si vemos la interfaz ICollection dentro de ella hay una propiedad Count, y como es el caso de todas las colecciones del espacio de nombres de  System.Collection.Generic, como vemos aquí.

  ICollection<string> collection = _dias as ICollection<string>;
  int Elementos = collection.Count;

Si se presenta una excepción esta no sabría de que lista estamos hablando y por lo tanto es mas rápida solo hay que hacer un casteo para saber el valor de Count. Pero que hacemos cuando la lista no implementa de esta interfaz.

En cambio Any(), nos determina si una secuencia contiene elementos. [*tomado de MSDN] de una forma un poco más directa, acudiendo directamente al método MoveNext de la enumeración pero sin tener que iterar sobre todos ellos, es decir, hará algo como lo siguiente:

  bool ElementosAny;
  using (IEnumerator<string> enumerator = _dias.GetEnumerator())
  {
     ElementosAny = enumerator.MoveNext();
  }

Entonces como podemos ver Any() es un método especialmente diseñado para este propósito y no se debe confundir con una “variación” de Count(), pues su propósito no es ese, si no el de determinar la cantidad de elementos de una colección.

FELIZ NAVIDAD 2014

FELIZ NAVIDAD 2014

EN ESTAS FECHAS LES DESEÓ MUCHA DICHA Y FELICIDAD…

SIEMPRE AGRADECIENDO A TODA LA GENTE QUE EN ESTE AÑO CONOCÍ Y ME BRINDARON SU AMISTAD. PIDO DISCULPA AQUELLOS QUE POR ALGÚN MOTIVO SINTIERON QUE LOS MOLESTE PERO DESDE DEL FONDO DE MI CORAZÓN NO FUERON MIS INTENCIONES, AQUELLOS QUE NO LOS PUDE ATENDER POR ESTAR SIEMPRE OCUPADO Y POR AQUELLOS QUE SE PREOCUPARON POR MI…

EN FIN A TODOS LOS QUE ME CONOCEN LES DESEO UNA FELIZ NAVIDAD Y PRÓSPERO AÑO NUEVO.

Feliz-navidad-2014-chapada-en-oro

Felices Fiestas .NET

Sin título-1

No he publicado nada en el blog por estar ocupado por el fin de año, pero mas adelante comenzare a publicar veré hasta donde me lleva esta aventura…

Por el momento quiero dar las gracias a los que leen mis post, y a los que pasan por este blog desearles unas felices fiestas de fin de año…

Agradecer a unas personas que me han dado su apoyo cuando he tenido dudas y me han sacado de ellas gracias Guiño. Como Diego Rojas por incentivarme en la creación del mismo, a mis otros amigos como Corona, Néstor, Jesús, Marvin, Chris, etc. Que me dan material para pensar en mis post.

Profesionales como todos mis compañeros de trabajo que siempre me han sacado de dudas cuando las he tenido.

Y todo aquel que me brinda su amista, les deseo unas felices fiestasÁngelEs broma