[Tips] Changer la culture de tous les threads en 1 ligne de code

Avec ASP.net, il est possible de définir globalement la culture via le fichier de configuration web.config et les attributs uiCulture et culture de la balise globalization :

<globalization uiCulture="fr-FR" culture="fr-FR"/>

Seul problème, cette configuration ne s’applique pas à l’ensemble des threads créés manuellement depuis les pages/handlers/modules.

En effet, si on créé un thread depuis une page, la culture par défaut de ce thread sera la culture du système sur lequel l’application est installée.

Avant .net 4.5, il était donc nécessaire de changer la culture manuellement à chaque création de thread.

Depuis .net 4.5, il est possible de définir une culture par défaut pour tous les threads qui seront créés par votre application via la propriété statique DefaultThreadCurrentCulture de classe CultureInfo :

CultureInfo.DefaultThreadCurrentCulture = ci

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *