Internationalisierung

Die Internationalisierung war traditionell eine unerwünschte Hürde für .NET-Entwickler, denn sie erfordert das aufwendige Extrahieren von Strings in Ressourcendateien und die Pflege von Ressourcensammlungen über viele verschiedene Kulturen hinweg.

Mit ReSharper sparen Sie viel Zeit bei der Internationalisierung – durch Refaktorierungen, Navigationshilfen, Codeinspektionen und Quick-Fixes für resx-Dateien und Ressourcenverwendungen in C#- und VB.NET-Code sowie in ASP.NET- und XAML-Markup.

ReSharper erkennt Strings, die Sie zu Ressourcendateien verschieben können

Hervorhebung lokalisierbarer Strings

ReSharper erkennt Strings, die Sie lokalisieren können, hebt diese hervor und hilft Ihnen beim Verschieben in eine Ressourcendatei.

Abhängig von Ihren Projekteinstellungen kann ReSharper alle hartcodierten Stringliterale hervorheben oder nur jene, die explizit mit Localizable(true) markiert sind.

Einen lokalisierbaren String zu einer Ressourcendatei verschieben

Strings zu Ressourcendateien verschieben

Wenn ReSharper einen lokalisierbaren String entdeckt, hilft es Ihnen, den String unkompliziert in eine Ressourcendatei zu verschieben. Sie können optional nach identischen Strings suchen und diese refaktorieren, um das neue Ressourcenelement zu verwenden.

Abhängig von Ihren Projekteinstellungen können Strings, die Sie zu einer Ressourcendatei verschieben können, mit gewellten Unterstrichen hervorgehoben werden. Wenn ein String nicht hervorgehoben ist, drücken Sie Strg+Umschalt+R und wählen Sie die Refaktorierung Move to Resource aus. Wenn ein String wie im obigen Screenshot mit einem gewellten Unterstrich hervorgehoben ist, können Sie Alt+Enter drücken und die Refaktorierung direkt aus der Quick-Fix-Liste heraus starten.

ReSharper kann Strings nicht nur in C#- oder VB.NET-Code, sondern auch in den Markup-Dateien von Webanwendungen und in beliebigen HTML-Strings bearbeiten.

Verfügbare Refaktorierungen für Ressourceneinträge

Refaktorierungen

Zusätzlich zum Verschieben von Strings zu Ressourcendateien bietet ReSharper eine Reihe von anderen Refaktorierungen für die Internationalisierung an:

  • Die Refaktorierung Move Resource verschiebt bestehende Ressourceneinträge zwischen Ressourcendateien.
  • Rename Resource hilft, das Name-Attribut eines Ressourceneintrags zu ändern.
  • Inline Resource löscht einen Ressourceneintrag aus einer Ressourcendatei und ersetzt alle Verwendungen durch den Originalstring.
  • Safe Delete Resource versucht einen Ressourceneintrag samt aller Verwendungen zu löschen, ohne den Code zu beschädigen. Wenn ReSharper feststellt, dass einige Verwendungen nicht sicher automatisch gelöscht werden können, dann schlägt es vor, dass Sie diese manuell bearbeiten, bevor Sie die Refaktorierung anwenden.

Informationen zu anderen Refaktorierungen, die in ReSharper zur Verfügung stehen, finden Sie unter Refaktorierungen.

ReSharper kann alle erkannten Codeprobleme in Ressourcendateien anzeigen

Codeinspektion in Ressourcendateien

ReSharper bietet eine Reihe von Codeinspektionen an, die Ihnen helfen, häufige Probleme mit Ressourceneinträgen zu erkennen.

ReSharper warnt Sie insbesondere immer dann, wenn ein bestimmter Ressourcenwert nicht in einer bestimmten Kultur überschrieben ist oder wenn dieser mit dem gleichen Namen überschrieben wurde, der in der kulturneutralen Ressourcendatei verwendet wird. ReSharper macht Sie auf doppelte Ressourcennamen in einer einzelnen Ressourcendatei aufmerksam und ist sogar in der Lage, fehlende oder redundante Stringformatierungs-Platzhalter in Ressourcenwerten zu erkennen.

Bei solchen Problemen hebt ReSharper den Code im Editor hervor. Zudem können Sie sich mit der ReSharper-Funktion Find Code Issues alle Probleme in Ressourcendateien anzeigen lassen und zu diesen navigieren.

Darüber hinaus bietet ReSharper Quick-Fixes an, um diese Probleme direkt in den Ressourcendateien zu lösen.

ReSharper findet Verwendungen von Ressourceneinträgen in C#- und VB.NET-Code sowie in ASP.NET-Markup

Verwendungen von Ressourcen finden

Die ReSharper-Funktion Find Usages funktioniert auch bei Ressourcen tadellos. Sie können sowohl im Code als auch in den Ressourcendateien nach Vorkommen von Ressourceneinträgen suchen.

Zwischen kulturspezifischen Ressourcendateien navigieren

Zwischen Kulturen und Ressourcen navigieren

Die ReSharper-Funktionen Go to Derived Symbols und Go to Base helfen Ihnen beim Navigieren von Ressourceneinträgen in einer kulturneutralen Ressourcendatei zu den entsprechenden Einträgen in kulturspezifischen Ressourcendateien – und umgekehrt.

ReSharper zeigt die Struktur einer Ressourcendatei

Struktur einer Ressourcendatei

ReSharper stellt die Struktur von Ressourcendateien in einer spezialisierten Version des Toolfensters File Structure dar. Es listet alle Einträge in einer Ressourcendatei auf und veranschaulicht Ressourcen-IDs, Ressourcentext in der aktuellen Kultur und Ressourcenkommentare (falls vorhanden). Außerdem gibt dieses Toolfenster an, ob Ressourceneinträge in anderen Kulturen überschrieben wurden und ob sie Formatierungsplatzhalter beinhalten.

Hinweis zu Tastenkombinationen

Alle auf dieser Seite angegebenen Tastenkürzel sind in der standardmäßigen "Visual Studio"-Tastaturbelegung von ReSharper verfügbar. Weitere Informationen zu den beiden Tastaturbelegungen von ReSharper finden Sie in der ReSharper-Dokumentation.