Start Debugging

Blog

Página 6 de 91

¿Qué decide si EF Core genera una columna `date` de SQL Server como `DateOnly` o `DateTime`?

Lo decide la versión de EF Core del proveedor de SQL Server en tu proyecto de inicio: EF Core 7 y anteriores generan date como DateTime, EF Core 8 a 11 lo generan como DateOnly. Aquí está el mapeo de tipos que toma la decisión, la salida medida con EF Core 7, 8, 10 y 11 RC 2, y las dos formas de recuperar DateTime sin remapear en silencio la columna a datetime2.

¿Qué copia realmente una expresión `with` de C# y por qué las propiedades calculadas de un record no se recalculan?

Una expresión with llama al método <Clone>$ que el compilador genera en el record, el cual ejecuta un constructor de copia que copia todos los campos de instancia y omite todos los inicializadores. Por eso las propiedades inicializadas a partir de otras propiedades, los valores en caché y los ID Guid quedan desactualizados. Medido en .NET 10 con C# 14, con las soluciones que sí funcionan.

Migra el almacenamiento local de una app Flutter de Hive a Drift (hive_ce 2.22 a drift 2.35)

Una importación única y a prueba de fallos de las cajas de Hive existentes a una base de datos SQLite de drift en el dispositivo del usuario: diseño del esquema, la función de importación, idempotencia, eliminación de las cajas y las dos trampas que corrompen datos en silencio (precisión de DateTime y colisiones de nombres de clase). Probado en Flutter 3.44.8 con hive_ce 2.22.0 y drift 2.35.2.

Migra una aplicación Blazor con componentes enrutables en otro assembly de .NET 8 a .NET 10

Cómo actualizar una Blazor Web App cuyas páginas viven en una biblioteca de clases Razor o en un proyecto .Client de .NET 8 a .NET 10: qué se mantiene igual (los dos registros de AdditionalAssemblies) y las cuatro cosas que se rompen, desde un 404 en blazor.web.js en hosts delgados hasta páginas NotFoundPage que se muestran en blanco. Medido en ASP.NET Core 8.0.32 y 10.0.10.

FileSystemWatcher vs sondeo para detectar cambios de archivos en un recurso compartido de red en .NET

En un recurso compartido SMB o NFS, el sondeo es la fuente de verdad y FileSystemWatcher es, como mucho, una pista. FileSystemWatcher no detecta los cambios remotos en Linux y macOS, desborda su búfer de red de 64 KB y se detiene para siempre cuando se cae la conexión. Usa una comparación periódica de instantáneas y deja que el watcher solo adelante un escaneo. Verificado en .NET 10.0.10.