Bug en string.IsNullOrEmpty() del .NET Framework 2.0
Este método estático de la clase string en C# 2 es sumamente útil, ya que ahorra el trabajo de la verificación de valores nulos al querer saber si un string está vacío. Sin embargo, hay un bug localizado muy específico:
En una aplicación de consola, compilada en modo release, ejecutándose en un ambiente producción (fuera del IDE de Visual Studio) y usada dentro de algún ciclo como for o while, se genera la siguiente excepción del JIT:
Null Exemption caused by JIt optimisation around String.IsNullOrEmpty
Así, un código tan simple como este dejará de funcionar:
-
for (int j = 0; j <10; j++)
-
11 {
-
12 if (String.IsNullOrEmpty(x))
-
13 {
-
14 //TODO:
-
15 }
-
16 }
Todo el detalle específico del bug incluyendo workarounds disponibles en:
Si bien es un caso muy específico, siempre es bueno saberlo para que no pasar horas buscando algún error cometido por nosotros mismos.
Sharepoint Skinner
Si alguna vez has intentado modificar el aspecto de un sitio de Windows Sharepoint Services o Sharepoint Portal Server sabrás que no es una tarea sencilla y, aunque las cosas se facilitan con Sharepoint Designer, el lío de lidiar con las hojas de estilos y los cientos de clases suele quitar mucho tiempo.
Pues he aquí una excelente herramienta que hace de esta tarea algo mucho más sencillo:
