This article has been localized into German by the community.
CodeBehind Lokalisierung
In den vorherigen Kapiteln haben wir die Lokalisierung nur für den Markup-Teil der Webseite verwendet, aber die Lokalisierung Ihrer Zeichenfolgen in Code Behind ist genauso einfach. Hier sind die Techniken dafür, mit einigem Beispielcode, um Ihnen den Einstieg zu erleichtern.
Direkter Zugriff
Da das .NET Framework Ihre globalen Ressourcendateien in stark typisierte Klassen umwandelt, können Sie sie tatsächlich als solche referenzieren. Wenn Sie beispielsweise eine globale Ressourcendatei mit dem Namen MyGlobalResources.resx und einer Ressourcenzeile mit dem Namen HelloWorldString haben, können Sie folgendermaßen darauf zugreifen:
lblHelloWorld.Text = Resources.MyGlobalResources.HelloWorldString;
GetLocalResourceObject()
Mit einem Aufruf von GetLocalResourceObject() können Sie eine bestimmte Zeile aus Ihrer lokalen Ressourcendatei abrufen. Es wird als Objekt zurückgegeben, aber Sie können immer die ToString() -Methode aufrufen. Damit dies funktioniert, müssen Sie sich in einer Datei befinden, die eine lokale Ressourcendatei enthält. Um eine Zeile daraus zu erhalten, geben Sie einfach den Namen der Zeile als Parameter für die Methode an:
lblHelloWorld.Text = GetLocalResourceObject("lblHelloWorld.Text").ToString();
GetGlobalResourceObject()
Die GetGlobalResourceObject() -Methode funktioniert ähnlich wie die oben beschriebene lokale Version, jedoch für globale Ressourcen. Sie müssen jedoch einen zusätzlichen Parameter angeben, um ASP.NET mitzuteilen, in welcher globalen Ressourcendatei Sie nach der Zeile suchen möchten. Der erste Parameter ist also der Name der aus der Ressourcendatei generierten Ressourcenklasse, der sekundäre Parameter So geben Sie den Namen der gesuchten Zeile an:
lblHelloWorld.Text = GetGlobalResourceObject("MyGlobalResources", "HelloWorldString").ToString();
Welcher Ansatz am häufigsten verwendet wird, hängt von der jeweiligen Situation und Ihren Vorlieben ab. Der erste hat jedoch einen großen Vorteil: Da er stark typisiert ist, werden Sie vom Compiler benachrichtigt, wenn die abzurufende Zeile nicht mehr vorhanden ist, sodass Sie abfangen können Probleme, bevor sie in Produktion gehen.