2016-06-05 12 views
0

Ich erstellte eine MVC-Webanwendung mit asp.net und Visual Studio 2012.Machen Sie eine mehrsprachige Anwendung in asp.net

Jetzt möchte ich es multilangual machen. Abhängig von der Browsersprache des Benutzers, um die Seite automatisch in einer Sprache zu öffnen.

Ich war auf der Suche im Internet und ich schaffen zwei globale Ressourcen genannt:

ContentEN.resx 
ContentES.resx 

In beiden Dateien, die ich einige Werte mit dem gleichen Schlüssel und anderen Wert zum Beispiel hinzugefügt:

Name: userInformation, Wert: Informationen Nutzer Name: userInformation, Wert: Informacion de usuario

dann auf t Er HTML kann das Etikett wie @Resources.ContentES.UserInformation

verwenden Das Problem ist, dass ich es automatisch tun möchte. Die Frage ist also: Wenn ich beide Dateien für beide Sprachen erstellt habe, wie kann ich das eine oder andere abhängig vom Browser des Benutzers verwenden?

Danke!

Antwort

1

Sie benötigen Ressourcen zu nennen anders:

Content.resx 
Content.EN.resx 
Content.ES.resx 

Wo Content.resx die Standard-Ausweich ist. Und dann Fragen Sie sie so:

@Resources.Content.UserInformation 

Aber das funktioniert nur, wenn Ihre Thread-Sprache entsprechend eingestellt ist.

https://weblog.west-wind.com/posts/2014/Mar/27/Auto-Selecting-Cultures-for-Localization-in-ASPNET

Der wichtigste Punkt ist dieser:

<system.web> 
    <globalization culture="auto:en-US" uiCulture="fr" /> 
    </system.web> 
Verwandte Themen