Desde hace ya casi veinte años, reservo el primer post de enero para compartir con vosotros los contenidos más leídos del año anterior, sobre todo para asegurarme de que no os habéis perdido ninguno de ellos 😊
Así que, como no podía ser de otra forma, aquí tenéis los top posts de 2025, una lista prácticamente copada por artículos relacionados con .NET y C#, especialmente en sus últimas versiones, que han sido los grandes protagonistas del año en el blog.
Top 10 posts 2025 en Variable not found
Empezando por el final de la lista, en el puesto número 10 encontramos el post Extension members en C# 14 (.NET 10), donde hablamos de una de las novedades más interesantes del lenguaje C# en su versión 14: los bloques extension y la nueva capacidad para crear propiedades extensoras o extender tipos estáticos.
Justo a continuación, en la posición número 9 vemos que a la hora de buscar valores en el interior de un conjunto de datos en memoria, podemos hacer como siempre: recorrerlo manualmente hasta detectar lo que buscamos... o bien exprimir al máximo las capacidades del hardware más moderno y su soporte en .NET 10. Explicamos cómo hacerlo en el artículo Dispara la eficiencia de tus búsquedas en memoria con .NET usando SearchValues.
En octavo lugar, el post Simulando enumerados de texto en C# muestra cómo, abusando un poco de conversores implícitos y algunos otros truquillos, podemos crear enumerados de texto, algo que encontramos en otros lenguajes pero que no está soportado de forma nativa en C#.
Seguimos ascendiendo en la lista, y encontramos algo que, a tenor de las visitas recibidas, parece preocuparnos a muchos: cómo gestionar de forma centralizada las dependencias NuGet en soluciones de gran tamaño. El post Gestión centralizada de paquetes NuGet en soluciones y proyectos .NET describe el CPM (Central Package Management) de .NET y muestra diferentes escenarios y posibilidades de uso.
Reconozcamos que los desarrolladores .NET siempre hemos mirado con envidia a otros lenguajes o tecnologías que permitían escribir scripts ejecutables directamente desde la línea de comandos, como Python o Node.js. Pues, como mostramos en el post Ejecutar directamente archivos C# desde línea de comandos con "dotnet run", esto ya es posible en .NET 10 y C# 14, gracias a la nueva capacidad de ejecutar archivos .cs directamente con dotnet run <filename.cs>, sin necesidad de crear proyectos o soluciones, ni de compilar nada previamente.
Y llegamos al ecuador de la lista, con el post 8 cosas que (quizás) no conocías sobre la clase Random de .NET, donde repasamos algunas curiosidades y funcionalidades poco conocidas de esta clase tan utilizada en multitud de aplicaciones, y cuya potencia y posibilidades suelen pasar desapercibidas.
Ya en el cuarto puesto, rondando el podio, hablamos de los peligros de no gestionar correctamente las excepciones no controladas en servicios en segundo plano (BackgroundService) en aplicaciones ASP.NET Core. En el post ¡Cuidado con las excepciones no controladas de servicios en segundo plano (BackgroundService) en ASP.NET Core! explicamos el problema, que incluso puede llegar a detener por completo aplicaciones en producción, y cómo podemos solucionarlo para hacer nuestras aplicaciones más robustas y fiables.
En tercera posición, el post Aprovecha al máximo los archivos .http en Visual Studio usando variables dinámicas describe las mejoras introducidas en Visual Studio para trabajar con archivos .http, que nos permiten crear y ejecutar peticiones HTTP directamente desde el editor, y cómo podemos usar variables dinámicas para hacerlos aún más potentes y flexibles. Personalmente, me encantan estos archivos para probar y documentar APIs RESTful de forma rápida y sencilla, y parece que no soy el único, ya que este post ha tenido una gran acogida.
El segundo puesto es para el post Obtener información sobre el origen de la invocación de un método con los atributos "caller info" de .NET, donde explicamos cómo usar atributos como CallerMemberName, CallerFilePath, CallerLineNumber y CallerArgumentExpression para obtener información sobre quién llamó a un método, desde qué archivo, en qué línea, y qué expresiones se utilizaron como argumentos de la llamada, lo que puede ser muy útil para depuración, logging y otras tareas similares.
Y por fin en el puesto número uno, el post más leído del año 2025 en Variable not found ha sido JavaScriptizando C#: chequeo de nulos usando conversores implícitos, donde mostramos que la extensibilidad de C# nos permite lograr chequear nulos usando una sintaxis similar a la habitual de JavaScript.
Menciones especiales
Por último, creo que vale la pena destacar dos posts que prácticamente empataban con la posición número 10, y que finalmente tuve que dejar fuera del top ten. Unos aplausos también para ellos 😉
-
Comparar strings ha sido siempre bastante sencillo, pero no cuando se trata de ordenar o comparar valores numéricos incluidos en el interior de cadenas de texto. El post Comparación natural de cadenas en .NET 10 trata de la interesante novedad de .NET 10 que hará posible que "1.2" por fin pueda considerarse mayor que "1.10" sin necesidad de recurrir a complicadas funciones personalizadas.
-
Los archivos de solución de .NET ".sln" siempre han sido extensos, crípticos y difícilmente editables manualmente, pero esto se acabó. En el artículo .SLNX: El nuevo formato de soluciones .NET hablamos del nuevo formato de soluciones ".slnx" introducido en .NET 10, abierto, más simple, conciso y ligero.
Publicado en Variable not found.


Aún no hay comentarios, ¡sé el primero!
Enviar un nuevo comentario