Iniciar sesión
Registrarse
He olvidado mi contraseña
Filtrando por 'c#'

A lo largo de los últimos 15 años he tenido la suerte ser testigo de la evolución de la tecnología LINQ (Language Integrated Query), partiendo desde su misma concepción y pasando por las fases de implementación inicial y desarrollo, hasta llegar a la actual madurez. LINQ no solo ya no es una n...

Enviado por Octavio Hernandez
LEER MÁS

“Workin' from seven to eleven every night It really makes life a drag I don't think that's right...” Led Zeppelin, “Since I've Been Loving You” (1970) ¿Cómo? ¿Que ya sale C# 11? Sí que el tiempo vuela... Y todavía más rápido si te lo pasas trabajando de sol a sol, a pesar de lo que p...

Enviado por Octavio Hernandez
LEER MÁS
c# .NET

Adiciones a LINQ en .NET 6.0

“Flock of angels lift me somehow Somewhere high and hard and loud Somewhere deep into the heart of the crowd I'm the last man standing now I'm the last man standing now” Bruce Springsteen, “Last Man Standing” (2020) A lo largo de estos años, he escrito un par de entradas (aquí y aquí) en...

Enviado por Octavio Hernandez
LEER MÁS

“Will you decide what makes you an entity That's your identity” Black Sabbath, “End of the Beginning” (2013) Después de una pausa que se ha extendido más de lo esperado, dedico hoy un último post al operador ! (null-forgiving operator), sobre el que ya hablamos aquí y aquí. Esta vez ...

Enviado por Octavio Hernandez
LEER MÁS

[NOTA: Este artículo asume que todo el código que se presenta estará contenido en proyectos que tienen activadas las referencias anulables. Cómo activar las referencias anulables para un proyecto de C# y Visual Studio 2019 se describe aquí]. En la entrada anterior hablamos del llamado null-for...

Enviado por Octavio Hernandez
LEER MÁS
c# .NET

Adiciones recientes a LINQ

“I have to admit it's getting better A little better all the time...” The Beatles, “Getting Better” (1967) “If I ever lose my faith in you There'll be nothing left for me to do...” Sting, “If I Ever Lose My Faith in You” (1993) Después de bastante tiempo (una década, para ser má...

Enviado por Octavio Hernandez
LEER MÁS

“Time keeps flowing like a river...” The Alan Parsons Project, “Time” (1981) Ante todo, mis mayores deseos de que este 2021 sea mucho mejor para todos los lectores que el recién terminado 2020. El tiempo sigue fluyendo (como un río hacia el mar, dijo Alan Parsons), y hace tanto que no es...

Enviado por Octavio Hernandez
LEER MÁS

Introducción Los verbos más habituales a la hora de trabajar con una Web API suelen ser GET, PUT y POST. Y en menor medida PATCH. PUT y PATCH se utilizan para actualizar recursos existentes, pero la diferencia entre PUT y PATCH, es que PUT actualiza, o mejor dicho reemplaza, un recurso existe...

Enviado por jorge
LEER MÁS

Para ejecutar los ejemplos de código que indico en esta entrada, he utilizado .NET 5 (para soportar C# 9.0), y puedes hacer uso del SDK de .NET 5, Visual Studio Code, Visual Studio 2019 o bien, sharplab.io Si utilizas este último, recuerda eliminar el Console.ReadKey(); de los ejemplos de cód...

Enviado por jorge
LEER MÁS
c# Patterns

Mediator Pattern en C#

Introducción El Patrón Mediador o Mediator Pattern es un Behavioral Pattern o Patrón de Comportamiento que permite la comunicación de varios objetos entre sí, sin que ninguno de esos objetos tenga que conocer la estructura de los otros. Como mediador o coordinador, es el encargado de maneja...

Enviado por jorge
LEER MÁS

“I know you're here but you're not really there...” Kansas, “The Absence of Presence” (2020) A lo largo de múltiples entradas anteriores hemos venido describiendo las nuevas características que se incluyeron en la versión 8.0 del lenguaje C#, y creo que terminamos a tiempo, ahora que se ...

Enviado por Octavio Hernandez
LEER MÁS

Introducción Voy a empezar la entrada describiendo una situación teórica que nos ayudará a comprender mejor el patrón sobre el que voy a hablar en esta entrada. Imaginemos que ponemos a varias personas en fila. Esas personas forman parte del sistema o procedimiento. La responsabilidad de ca...

Enviado por jorge
LEER MÁS

Introducción Trabajar con un IDE o entorno productivo como Visual Studio 2019 es muy gratificante. Sin embargo, cuando Microsoft realiza cambios, puede ser estresante. Uno de esos cambios tiene que ver con la combinación de teclas que usábamos para duplicar una línea de código en C#. En Vi...

Enviado por jorge
LEER MÁS

Introducción Cuando trabajamos con objetos en cualquier lenguaje de programación, tendemos a trabajar con ellos, realizar operaciones con o sobre ellos, modificar sus datos, etc. Hace unos años publiqué una entrada sobre la inmutabilidad de objetos y sus propiedades en C#. En aquella entrada...

Enviado por jorge
LEER MÁS

El pasado fin de semana estaba empezando a escribir este artículo al mismo tiempo que miraba las noticias, que últimamente no traen nada bueno. Ahora que se me van acabando las novedades recientes de C# de las que no he hablado todavía, y que no me atrevo a decir nada sobre aquella de la que no m...

Enviado por Octavio Hernandez
LEER MÁS

You can find the original (Spanish) version of this post here. “Button up your overcoat When the wind is free Take good care of yourself You belong to me!” Frank Sinatra, “Pick Yourself Up” In the very first place, I would like to wish all my readers that the perfidious COVID-19 leaves yo...

Enviado por Octavio Hernandez
LEER MÁS

“Button up your overcoat When the wind is free Take good care of yourself You belong to me!” Frank Sinatra, “Pick Yourself Up” Ante todo, quiero desearle a todos mis lectores que el pérfido COVID-19 pase de largo sin tocarles, y exhortarlos a que se cuiden y cuiden a los suyos: ¡hay much...

Enviado por Octavio Hernandez
LEER MÁS

Introducción En esta entrada, voy a explicar cómo crear un Servicio de Windows con .NET Core 3.1. Para ello, podríamos utilizar una plantilla de Visual Studio 2019 que nos da casi todo hecho, pero voy a hacerlo paso a paso de manera tradicional, a través de una aplicación de consola.  ...

Enviado por jorge
LEER MÁS

Introducción Recientemente, me encontraba con el método de una clase en C# dentro del cual tenía que recorrer un conjunto de registros bastante grande, y para ello, tenía un bucle foreach. El proceso dentro del bucle y de tipo batch, pasaba por diferentes estados y circunstancias que desenca...

Enviado por jorge
LEER MÁS

Hace un par de años, en un artículo publicado en los tiempos de C# 7.x, presentamos los conceptos fundamentales en relación con el emparejamiento de patrones (pattern matching), característica que recién entonces se incorporaba a C# luego de su probado éxito en diferentes lenguajes de program...

Enviado por Octavio Hernandez
LEER MÁS
1 2 3 10