Start Debugging

Blog

Página 6 de 91

O que decide se o EF Core faz o scaffold de uma coluna `date` do SQL Server como `DateOnly` ou `DateTime`?

A versão do EF Core do provedor SQL Server no seu projeto de inicialização decide: o EF Core 7 e anteriores fazem o scaffold de date como DateTime, o EF Core 8 até o 11 fazem como DateOnly. Aqui está o mapeamento de tipos que toma a decisão, a saída medida do EF Core 7, 8, 10 e 11 RC 2, e as duas formas de recuperar DateTime sem remapear a coluna silenciosamente para datetime2.

O que uma expressão `with` do C# realmente copia, e por que as propriedades calculadas de um record não são recalculadas?

Uma expressão with chama o método <Clone>$ gerado pelo compilador para o record, que executa um construtor de cópia que copia todos os campos de instância e ignora todos os inicializadores. É por isso que propriedades inicializadas a partir de outras propriedades, valores em cache e IDs Guid ficam desatualizados. Medido no .NET 10 com C# 14, com as correções que realmente funcionam.

Migre o armazenamento local de um app Flutter do Hive para o Drift (hive_ce 2.22 para drift 2.35)

Uma importação única e segura contra falhas dos boxes existentes do Hive para um banco SQLite drift no dispositivo do usuário: design do schema, a função de importação, idempotência, exclusão dos boxes e as duas armadilhas que corrompem dados silenciosamente (precisão de DateTime e colisão de nomes de classe). Testado no Flutter 3.44.8 com hive_ce 2.22.0 e drift 2.35.2.

FileSystemWatcher vs polling para detectar mudanças em arquivos em um compartilhamento de rede no .NET

Em um compartilhamento SMB ou NFS, o polling é a fonte da verdade e o FileSystemWatcher é, no máximo, uma dica. O FileSystemWatcher perde mudanças remotas no Linux e no macOS, estoura o buffer de 64 KB de rede e para de vez quando a conexão cai. Use um diff periódico de snapshots e deixe o watcher apenas disparar uma varredura antecipada. Verificado no .NET 10.0.10.