Docker Desktop inclut optionnellement un cluster Kubernetes local. Dans ce long article, je décris une mise en pratique de comment concrètement on peut tester une application composée de plusieurs services, et déboguer ceux-ci au besoin, dans le cluster Kubernetes local de Docker Desktop, avec des exemples réalistes, à savoir des dépendances d’infrastructure …
Tag : C#
AsyncLocal et ExecutionContext
Dans ce court article, je décris un problème que j’ai trouvé intéressant. Cela concerne ce qu’il me semble être un défaut de design de .NET avec AsyncLocal et ExecutionContext. On pourrait même simplifier en ne parlant que de AsyncLocal car je vois l’existence de ExecutionContext comme une conséquence pour supporter le premier. Je pense que l’on va …
ASP.NET Core OpenIdConnect et liens dans des documents MS Office
Si vous utilisez le package standard Microsoft.AspNetCore.Authentication.OpenIdConnect pour gérer l’authentification d’une application web ASP.NET Core, vous devriez pouvoir observer un problème intéressant si vous tentez d’accéder à une page protégée (requérant un utilisateur authentifié) à partir d’un document ouvert dans un programme MS Office tel que …
Event Tracing for Windows (ETW) et .NET Core
Cet article est très ancien. Les choses ont bien changées depuis 2019. Le sujet abordé est conservé pour référence mais n'est certainement plus applicable en l'état. Event Tracing for Windows (ETW) et .NET Core Event Tracing for Windows est un framework pour gérer les traces de diagnostic sur Windows Il est mature depuis de nombreuses années et est …
Comment détecter la veille prolongée du système depuis un service Windows
Les événements de mise en veille prolongée (Sleep / Hibernate) peuvent s’avérer indispensables pour une application connectée, car les connexions vont être interrompues. Cet article présente deux approches: la première basée sur l’API standard SystemEvents, qui pose problème dans un service Windows; l’autre basée sur WMI qui fonctionnera dans tous les cas de …
Sécuriser des WebApi avec OAuth2 et Client Credentials?
Cet article est très ancien. Les choses ont bien changées depuis 2016. Le sujet abordé est conservé pour référence mais n'est certainement plus applicable en l'état. Cet article est susceptible de référencer des images manquantes ou de contenir des erreurs de formatage sur son contenu. Il s'agit d'un import provenant d'un ancien blog. J’ai déjà eu à …