lunes, 8 de noviembre de 2010

IsNullOrWhiteSpace, that’s the question!

Seguramente muchos ya lo han observado en C# 4.0. Existe una nueva función aplicable al tipo String: IsNullOrWhiteSpace()

A la vieja y conocida función IsNullOrEmpty() le faltaba chequear los espacios en blancos o otros caracteres no visibles.

Esta nueva función agrega justamente eso. Es decir, no solo verifica lo que indica su nombre, sino también cadenas vacías y otros caracteres no visibles que son irrelevantes en muchos procesos.

Si antes, para considerar los espacios en blanco, teníamos que escribir lo siguiente:

if (string.IsNullOrEmpty(value) || value.Trim() == string.Empty)

ahora es suficiente y más eficiente escribir:

if (string.IsNullOrWhiteSpace(value))

Hace algún tiempo había escrito un extension method que hacía más o menos esto. Pero ahora esta nueva función integrada, es bienvenida y tendré que jubilar mi extension method (o usar la nueva función internamente).

Debo reconocer que al principio me guié solo por el nombre y pensé que no consideraba las cadenas vacías. Quizás esperaba un nombre como:

IsNullOrEmptyOrWhiteSpaceOrAnotherInvisibleChar()

Pero creo que es mejor el nombre actual. A propósito, esto me hace recordar un viejo método disponible desde las primeras versiones del framework:

FormsAuthentication.HashPasswordForStoreInConfigFile()

Lo he usado muchas veces, pero nunca para guardarlo en un archivo de configuración ;-)

Me pregunto: que habrán estado pensando cuando bautizaron a este método?

Espero que sirva.
Gus

No hay comentarios: