Lecturas recomendadas sobre c# y .net · septiembre 2020


lecturas recomendadas c# y .net


Aquí tienes algunas lecturas interesantes sobre c# y .net que he recopilado durante el mes de septiembre. 

1. Domain model purity and the current time · Vladimir Khorikov

Quizá no lo parezca pero la propiedad estática DateTime.Now es un método impuro. Es una llamada a un elemento externo de nuestra aplicación, y por eso se debería tratar como una dependencia externa. Aquí tienes un excelente artículo que te aconseja cómo inyectar dicha dependencia en tu aplicación.

2. Things you need to know as a C# developer - Collections · Sam Fields

En c# existen numerosas clases que representan colecciones. Si quieres dominar el lenguaje es importante conocer sus características para saber cuál utilizar en cada caso. La elección no siempre es obvia. 

3. C# 9.0: Records – Work With Immutable Data Classes · Thomas Claudius Huber

La característica que más me ha llamado la atención de la próxima versión de c# son los "records". Se trata de un tipo inmutable que funciona igual que el concepto ValueObject de Domain Driven Design. Si quieres saber más aquí tienes un buen artículo que describe su funcionamiento.

4.A. ASP.NET Core Localization Jump Start · Khalid Abuhakmeh

4.B. Remember ASP.NET Request Culture Using Middleware · Khalid Abuhakmeh

Tutorial sobre cómo crear aplicaciones multi-idioma en Asp.Net Core. El primer artículo describe el flujo para mostrar una cultura u otra y el segundo muestra cómo recordar la cultura del usuario y mostrarle esa misma cultura la próxima vez que visite la aplicación.

5. Why use MediatR? 3 reasons why and 1 reason not · Derek Comartin 

Si quisieras implementar el patrón Command and Query Responsibility Segregation (CQRS) en .Net utilizar la librería MediatR sería la opción más natural. Aquí tienes un artículo que defiende este patrón y que quizá te ayude a decidirte.

6. CQRS and MediatR in ASP.NET Core · Code Maze

Si te ha convencido el artículo anterior y quieres saber más sobre cómo implementar el patrón CQRS, aquí tienes un buen tutorial que te ayudará enormemente.

7. Solving Real Life Scenarios With .Net Core Entity Framework · Bora Kaşmer

Encriptar campos de la base de datos al guardar y desencriptarlos al recuperar, crear consultas a entidades sin tener que poner un where IsDeleted == false, crear DbSets en el contexto que no corresponden a tablas de la base de datos, ver las consultas SQL generadas en tiempo de ejecución en la consola. Si te interesa aquí tienes un artículo que explica cómo implementarlo con Entity Framework Core.

8. Use Attributes & Middleware in ASP.NET Core for Logging, Telemetry, and Anything Else · Michael Shpilt

Hay acciones que te interesa registrar en cada petición de una aplicación ASP.Net Core. Un log, telemetría o cualquier cosa que te interese. La mejor opción para ello es usar los middlewares. Aquí tienes un excelente artículo que te ayudará con ello.

9. Cómo actualizar correctamente un sitio web y evitar DLLs bloqueadas al actualizar una aplicación ASP.NET en IIS (o Azure) · José M.Alarcón 

Si cuando publicas una aplicación ASP.Net copias los archivos directamente en la carpeta de producción es posible que alguna de las DLL's esté en funcionamiento y no se pueda sobreescribir. Eso provoca que la aplicación deje de funcionar. Hay una manera muy sencilla de evitar esta clase de problemas. Este artículo explica cómo.

10. Deploying a .NET desktop application using MSIX · Gérald Barré

Para crear instaladores de aplicaciones de escritorio siempre he utilizado un template de proyecto de Visual Studio que se llama Visual Studio Installer Projects. Sin embargo, la recomendación de Microsoft es utilizar Windows Application Packaging Project (MSIX). Aquí tienes un artículo que explica cómo utilizar este instalador en una aplicación WPF. Sirve también para aplicaciones WinForms.

Extra: Blazor WebAssembly on Azure Static Web Apps · Scott Hanselman

Extra2:  ¡Nuevo curso de desarrollo web con Blazor en CampusMVP! · José M.Aguilar




Quizá algun día empiece a enviar una newsletter, si te gustaría recibirla subscríbete aquí

Archivo