Start Debugging

dotnet-10

103 posts · Página2de11

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.

Cómo descartar las pulsaciones de teclas en búfer antes de Console.ReadKey en un bucle de juego de consola en C#

Vacía el búfer de entrada de la consola con while (Console.KeyAvailable) Console.ReadKey(true) antes de esperar una tecla nueva, y vacíalo en cada fotograma de un bucle de juego para que la repetición de teclas no se acumule. Cómo funciona el búfer en Windows y Unix en .NET 10, por qué las teclas mantenidas generan retraso, la trampa del eco en Unix y FlushConsoleInputBuffer.

Cómo agregar la clave pública completa de un ensamblado con nombre seguro a InternalsVisibleTo en un proyecto de estilo SDK

Un ensamblado firmado debe nombrar a su ensamblado de confianza por la clave pública completa de 320 caracteres, no por el token, o la compilación falla con CS1726 o CS0281. Obtén la clave con sn -p y sn -tp, o con un script de .NET multiplataforma, y luego ponla en el metadato Key de un elemento InternalsVisibleTo en el .csproj. Cubre el respaldo de la propiedad PublicKey, la clave de DynamicProxyGenAssembly2 de Moq y la trampa de los saltos de línea.

Cómo detectar los eventos de bloqueo, desbloqueo, inicio y cierre de sesión de Windows en una app de C#

Usa SystemEvents.SessionSwitch en una app de escritorio o de consola, sobrescribe OnSessionChange en un servicio de Windows, o engancha WM_WTSSESSION_CHANGE tú mismo. Incluye código de .NET 10 para los tres enfoques, el hilo oculto '.NET System Events', por qué los servicios ven el inicio de sesión y las apps de escritorio no, las notificaciones fuera de orden y cómo consultar el estado de bloqueo actual con WTSQuerySessionInformation.

Cómo establecer parámetros de sesión de PostgreSQL como search_path o statement_timeout en cada conexión de EF Core con Npgsql

Un SET ejecutado una sola vez se borra con DISCARD ALL en cuanto Npgsql devuelve la conexión a su pool. Pon search_path y statement_timeout en el paquete de inicio con las palabras clave Search Path y Options de la cadena de conexión, recurre a ALTER ROLE o a un interceptor ConnectionOpened, y entiende por qué UsePhysicalConnectionInitializer pierde su SET sin avisar.
Anterior Siguiente