2015-11-23 18 views
15

Ho un'applicazione ASP.NET MVC configurata per il portoghese, su Visual Studio 2015. Durante il debug di questa applicazione, ho impostato <customErrors mode="Off" />, ma tutti gli errori sono visualizzati in portoghese, e Voglio vederli in inglese.Impostare una lingua diversa per gli errori MVC ASP.NET

Ho cercato di impostare questo in Web.config:

<globalization uiCulture="en-US" culture="en-US" enableClientBasedCulture="true" /> 

In Global.asax ho provato:

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

e

Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; 
Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture; 

Ho anche disinstallato il pacchetto Nuget Microsoft.AspNet.Mvc.pt-br , nessun successo.

Questo question è simile, ma ho bisogno di una soluzione che non implichi la modifica della configurazione della macchina o dei componenti installati, poiché ciò non è consentito nel mio posto di lavoro.

Come posso visualizzare tutti i messaggi di errore in una lingua specifica (in questo caso, in inglese)?

+1

Hai visto questo? http://stackoverflow.com/questions/209133/c-sharp-exception-messages-in-english E dove stai ambientando questa cultura? Forse stai configurando dopo la fase di gestione delle eccezioni nella pipeline – Fals

+0

Non l'ho visto, ma quella soluzione dipende da 'try/catch', e sto cercando una soluzione più generica, che possa essere configurata per l'intero applicazione, specialmente per i casi in cui il codice non viene raggiunto. Ma grazie. –

+0

Possibile duplicato di [Modifica lingua dei messaggi di errore in ASP.NET] (http://stackoverflow.com/questions/161486/change-language-of-error-messages-in-asp-net) – DavidG

risposta

6

Oggi quando ho provato di nuovo, con mia sorpresa i messaggi erano in inglese (quasi, vedi sotto). Ho provato a riprodurre l'errore che ho avuto ieri, ma non ho potuto.

Forse è solo una questione di riavvio (VS o PC). Ho anche continuato a lavorare sul progetto di notte su un PC diverso, ma non su nulla relativo a questo problema, quindi non posso dire che abbia fatto la differenza. Tutto quello che ho installato in Web.config è:

<globalization uiCulture="en-US" culture="en-US" enableClientBasedCulture="true" /> 

Ma ancora non tutto era in inglese. Durante il tentativo di riprodurre l'errore, ho forzato un errore di caricamento della libreria, ho utilizzato una DLL che richiede l'installazione di Ninject. Il messaggio di errore era (sottolineatura mia nella parte tradotta):

Errore server nell'applicazione '/'. Impossibile caricare il file o l'assembly 'Ninject, Versione = 3.2.0.0, Culture = neutral, PublicKeyToken = c7192dc5380945e7' o una delle sue dipendenze. O sistema não pode encontrar o arquivo especificado.

Descrizione: si è verificata un'eccezione non gestita durante l'esecuzione della richiesta Web corrente. Si prega di rivedere la traccia dello stack per ulteriori informazioni sull'errore e sulla sua origine nel codice.

Quella parte doveva essere: The system cannot find the file specified.

In tal caso, non credo che c'è molto che può essere fatto a livello di codice solo.

-3

Disinstallare il framework .net nella versione portugese e reinstallare la versione inglese, che dovrebbe fare il trucco.

+1

Potrebbe funzionare, ma come ho detto nella domanda, questa non è un'opzione per me perché non è consentita nel mio posto di lavoro. Grazie comunque. –

+0

Non pertinente in modo completo –

Problemi correlati