28 votes

Forcer les exceptions de la langue anglaise dans le cadre de .NET

En travaillant avec ASP.NET MVC, j'ai remarqué que les messages d'exception émis par le cadre .NET installé sur mon système sont en allemand. Je préférerais vraiment des messages en anglais, afin de pouvoir les poster sur SO.

Je sais que cette question a déjà été posée sur SO, mais étrangement, aucune des solutions proposées ne semble fonctionner dans mon cas. J'ai déjà essayé ce qui suit :

  • en basculant mon système Windows dans une langue anglaise et en redémarrant Visual Studio
  • Régler Outils -> Options -> Environnement -> Paramètres internationaux -> Langue sur "anglais".
  • en définissant la locale du fil de discussion en anglais juste avant que l'exception ne soit levée comme suit :

    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture ("en-US") ; Thread.CurrentThread.CurrentUICulture=new CultureInfo("en-US") ;

    //call my faulty method...

Alors, comment puis-je faire en sorte que le cadre .NET émette des messages d'exception en anglais ? Existe-t-il une approche permettant de le faire par solution ou même à l'échelle du système ?

Editar: L'exception est levée lors de l'exécution de mes tests unitaires. Je ne suis pas sûr que ce soit la raison pour laquelle le réglage de la culture du fil n'a pas eu d'effet.

9voto

tomsv Points 2565

Désinstallez le pack de langue allemand :

Démarrer - Panneau de configuration - Programmes et fonctions - Microsoft .NET Framework (4 Client Profile) Language Pack DEU - Uninstall (Deinstallieren)

Vous devrez peut-être répéter la désinstallation pour chaque version de .NET Framework que vous y trouverez.

7voto

Adrian Grigore Points 15993

Comme je viens de le découvrir, le problème était effectivement lié au fait d'avoir un projet de test différent. J'ai essayé de régler la langue de l'interface utilisateur sur l'anglais dans mon projet réel, mais je n'ai pas fait de même dans le projet de test, ce qui explique pourquoi les messages d'exception étaient toujours en allemand lorsque l'on regardait les résultats du test.

Le fait de définir la langue de l'interface utilisateur dans la méthode de test, juste avant que l'exception ne soit levée, a fonctionné pour moi.

4voto

Steve Haigh Points 6261

Avez-vous essayé de régler la culture de l'interface utilisateur sur " en " dans web.config ? Plus d'informations aquí .

3voto

Mez Points 1783

Apparemment, tous les messages d'exception du cadre sont liés à la langue du système d'exploitation installé. Ainsi, à moins que vous n'installiez une version anglaise de Windows, les exceptions du framework .Net n'apparaîtront pas en anglais. Même s'il semble étrange que le réglage de CurrentUICulture sur "en-US" n'aide pas, j'ai utilisé cette sorte de contournement pour avoir des messages en anglais sur mon système d'exploitation Windows néerlandais.

2voto

Mingue Points 21

En fait, il n'existe pas de bonne solution pour cela, votez sur Connect pour cette approche.

https://connect.microsoft.com/VisualStudio/feedback/details/591839/exception-localization-in-app-config-and-web-config

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X