Lokalisierungsverwaltung

PowerPortalsPro liefert eine LocalizationAdmin Komponente aus – ein schlüsselfertiges, SystemAdmin-gesteuertes Panel zum Betrieb der String-Lokalisierungspipeline zur Laufzeit. Öffne <LocalizationAdmin /> eine rollengesteuerte Seite, und ein Administrator kann sehen, wie der Lokalisierungscache konfiguriert und aufgebaut ist, ihn ohne Neustart des Hosts neu aufbauen, Lokalisierungsdateien maschinell übersetzen und einen merged per-culture-Snapshot herunterladen. Die Rahmenkomponente übernimmt die schwere Arbeit; Dein Portal stellt die Seite, das Rollen-Gate und den Navigationslink bereit – dieselbe Trennung, die die Site-Admin-Seite verwendet.

Was das Panel zeigt

LocalizationAdmin rendert mehrere Abschnitte, die jeweils von den Lokalisierungsdiensten des Frameworks unterstützt werden:

  • Konfiguration — Eine schreibgeschützte Zusammenfassung, wie das Aufwärmen verdrahtet ist – ob jede verfügbare Tabelle lokalisiert ist oder nur ein konfiguriertes Set, die zu lokalisierenden Tabellen, das Web-Ressourcenpfad-Muster, die registrierten Lokalisierungsverzeichnisse und -dateien sowie die Standardkultur. Diese spiegeln die LocalizationOptions Register deines Wirts wider.
  • Übersetzen Sie eine Datei — Ein Eingebettet LocalizationTranslator , das eine Lokalisierungsdatei maschinell in eine andere Kultur übersetzt. Es sperrt sich selbst bei der Verfügbarkeit – es gibt nichts dar, wenn kein Übersetzungsanbieter konfiguriert ist, oder eine Installationsaufforderung, wenn die verwaltete Lösung fehlt. Die Seite zur Übersetzungsdokumentation behandelt das vollständig.
  • Inspektieren und herunterladen von zusammengeführten Schlüsseln — Für jede Kultur, die Schlüssel im Cache hat, erhält man zwei Aktionen. Inspect öffnet einen Dialog , der jeden verschlossenen Schlüssel mit seinem aufgelösten Wert und der Quelle, die ihn geliefert hat, auflistet – ein sortierbares, größenverstellbares Raster, das nach Schlüssel, Wert oder Quelle filtern kann, was es leicht macht, genau zu erkennen, woher ein String stammt und welche Quelle eine andere überschreibt. Download speichert das merged localization-JSON für diese Kultur – die Vereinigung aller Quellen (Dataverse-Metadaten, Webressourcen und Ordnerdateien), die in einer einzigen Datei aufgelöst wurden – und ist auch im Inspektier-Dialog verfügbar.
  • Quellen — Ein Raster der pro-source Lastdatensätze aus dem letzten Aufwärmen, geordnet in der Lastreihenfolge – einschließlich der Anzahl der Schlüssel, die jede Quelle beigesteuert hat und wie viele davon einen früheren Wert überschrieben haben. Der schnellste Weg, um zu sehen, warum sich ein String so auflöst.
  • Nachladen — Stellt den String-Lokalisierungscache von jeder konfigurierten Quelle neu auf, ohne den Host neu zu starten. Der Rebuild ist atomar, sodass die Leser die vorherigen Werte sehen, bis das neue Wörterbuch fertig ist.

Verkabeln

Wie die Site-Admin-Seite ist sie LocalizationAdmin hinter dem synthetischen SystemAdmin Rollen-Claim geschützt, der durch SystemAdminClaimsTransformer – die Site Admin-Dokumentationsseite erklärt, wie dieser Anspruch konfiguriert wird. Fügen Sie die Komponente in eine rollengesteuerte Seite ein:

Tauchen Sie es im Navigationssystem an

Wickle den Navigationseintrag so ein, <AuthorizeView Roles="SystemAdmin"> dass Nicht-Admins keinen Link sehen, dem sie nicht folgen können:

Kontrollieren, was lokalisiert wird

Das Konfigurationspanel spiegelt die LocalizationOptions Host-Register wider. LocalizeAllAvailableTables wechselt zwischen der Lokalisierung jeder Tabelle und nur einer expliziten Menge, die über AddTableToLocalize; die Verzeichnis-, Datei- und Webressourcen-Einstellungen zeigen dem Aufwärmen an, wo ordnerbasierte und Webressourcen-Lokalisierungsquellen zu finden sind. Der vollständige Satz von Reglern ist in der untenstehenden API-Referenz zu finden.

Verwandt: die Übersetzungsseite

Das hier eingebettete Translate-a-File-Panel ist dasselbe LocalizationTranslator wie auf der Übersetzungsseite, das die Konfiguration eines Übersetzungsanbieters (z. B. Azure AI Translator) und die Installation der verwalteten Lösung durchführt.

API-Referenz

LocalizationOptions steuert das, was das Konfigurationspanel aufdeckt und woraus das Aufwärmen basiert. Seine Mitglieder sind im Folgenden zusammengefasst.

LocalizationOptions Baureihe

Eigenschaften

Name
Typ
Default
Beschreibung
DefaultCultureCultureInfo
Die Standardkultur, die verwendet wird, wenn keine bestimmte Kultur angefragt wird.
LocalizationDirectoriesIReadOnlyList<string>
Die Liste der Verzeichnispfade, die nach Lokalisierungsdateien durchsucht werden sollen.
LocalizationFilesIReadOnlyList<string>
Die Liste der einzelnen Dateipfade, von denen Lokalisierungsstrings geladen werden können.
LocalizeAllAvailableTablesbool
True
Wenn wahr (der Standard), werden lokalisierte Zeichenketten aus den Metadaten jeder Tabelle in der Dataverse-Umgebung und LocalizationOptions.TablesToLocalize wird ignoriert. Auf falsch gesetzt, um zu beschränken Lokalisierung auf die Tabellen, die über AddTableToLocalize(System.String) / IEnumerable{System.String})registriert wurden. Empfohlen für jedes Portal, das mehrere Sprachen unterstützt: Stelle dies auf falsch und Registrieren Sie nur die Tabellen, die Ihr Portal tatsächlich aufzeigt. Das Laden von Metadaten für jede Tabelle ergibt das Die Lokalisierung erwärmt sich deutlich langsamer und vergrößert den String-Cache mit Labels, Optionen und Ansicht Namen, die du nie anzeigen wirst – und diese Kosten werden pro installierter Sprache bezahlt. Wenn Sie sich für die Teilmenge anmelden, registrieren Sie sich jede Tabelle, deren Labels in der Benutzeroberfläche erscheinen (Raster, Formen, Untergitter, Diagramme), weil ein angezeigt wird Tabelle, die nicht lokalisiert ist, rendert ihre Rohschlüssel statt Labels. Konto, Kontakt und adx_externalidentity werden standardmäßig in die Liste aufgenommen.
TablesToLocalizeIReadOnlyList<string>
Die Dataverse-Tabellennamen, deren Metadaten (Labels, Auswahlen, Ansichten) als lokalisierte Strings exportiert werden sollten. Ignoriert, wann LocalizationOptions.LocalizeAllAvailableTables es wahr ist.
UrlCultureStrategyUrlCultureStrategy
PathPrefix
Kontrolliert, ob (und wie) die aktive Kultur in der Anfrage-URL widerspiegelt wird. Standardmäßig ( UrlCultureStrategy.PathPrefix Standardkultur frei, andere Kulturen unter dem Präfix /{Culture} ). Sieh Options.UrlCultureStrategy für die verfügbaren Modi. Hat nur Auswirkungen auf multikulturelle Standorte.
Name: DefaultCulture
Typ: CultureInfo
Beschreibung: Die Standardkultur, die verwendet wird, wenn keine bestimmte Kultur angefragt wird.
Name: LocalizationDirectories
Typ: IReadOnlyList<string>
Beschreibung: Die Liste der Verzeichnispfade, die nach Lokalisierungsdateien durchsucht werden sollen.
Name: LocalizationFiles
Typ: IReadOnlyList<string>
Beschreibung: Die Liste der einzelnen Dateipfade, von denen Lokalisierungsstrings geladen werden können.
Name: LocalizeAllAvailableTables
Typ: bool
Default: True
Beschreibung: Wenn wahr (der Standard), werden lokalisierte Zeichenketten aus den Metadaten jeder Tabelle in der Dataverse-Umgebung und LocalizationOptions.TablesToLocalize wird ignoriert. Auf falsch gesetzt, um zu beschränken Lokalisierung auf die Tabellen, die über AddTableToLocalize(System.String) / IEnumerable{System.String})registriert wurden. Empfohlen für jedes Portal, das mehrere Sprachen unterstützt: Stelle dies auf falsch und Registrieren Sie nur die Tabellen, die Ihr Portal tatsächlich aufzeigt. Das Laden von Metadaten für jede Tabelle ergibt das Die Lokalisierung erwärmt sich deutlich langsamer und vergrößert den String-Cache mit Labels, Optionen und Ansicht Namen, die du nie anzeigen wirst – und diese Kosten werden pro installierter Sprache bezahlt. Wenn Sie sich für die Teilmenge anmelden, registrieren Sie sich jede Tabelle, deren Labels in der Benutzeroberfläche erscheinen (Raster, Formen, Untergitter, Diagramme), weil ein angezeigt wird Tabelle, die nicht lokalisiert ist, rendert ihre Rohschlüssel statt Labels. Konto, Kontakt und adx_externalidentity werden standardmäßig in die Liste aufgenommen.
Name: TablesToLocalize
Typ: IReadOnlyList<string>
Beschreibung: Die Dataverse-Tabellennamen, deren Metadaten (Labels, Auswahlen, Ansichten) als lokalisierte Strings exportiert werden sollten. Ignoriert, wann LocalizationOptions.LocalizeAllAvailableTables es wahr ist.
Name: UrlCultureStrategy
Typ: UrlCultureStrategy
Default: PathPrefix
Beschreibung: Kontrolliert, ob (und wie) die aktive Kultur in der Anfrage-URL widerspiegelt wird. Standardmäßig ( UrlCultureStrategy.PathPrefix Standardkultur frei, andere Kulturen unter dem Präfix /{Culture} ). Sieh Options.UrlCultureStrategy für die verfügbaren Modi. Hat nur Auswirkungen auf multikulturelle Standorte.

Methoden

Name
Parameter
Typ
Beschreibung
AddLocalizationDirectorystring relativeDirectoryPath
void
Fügt einen Verzeichnispfad hinzu, um nach Lokalisierungsdateien zu suchen.
AddLocalizationFilestring relativeFilePath
void
Fügt der Liste einen einzelnen Lokalisierungsdateipfad hinzu.
AddTablesToLocalizeIEnumerable<string> tables
void
Fügt eine Sammlung von Dataverse-Tabellennamen zur Lokalisierung hinzu.
AddTableToLocalizestring tableName
void
Fügt einen einzelnen Dataverse-Tabellennamen zur Lokalisierung hinzu.
Name: AddLocalizationDirectory
Parameter: string relativeDirectoryPath
Typ: void
Beschreibung: Fügt einen Verzeichnispfad hinzu, um nach Lokalisierungsdateien zu suchen.
Name: AddLocalizationFile
Parameter: string relativeFilePath
Typ: void
Beschreibung: Fügt der Liste einen einzelnen Lokalisierungsdateipfad hinzu.
Name: AddTablesToLocalize
Parameter: IEnumerable<string> tables
Typ: void
Beschreibung: Fügt eine Sammlung von Dataverse-Tabellennamen zur Lokalisierung hinzu.
Name: AddTableToLocalize
Parameter: string tableName
Typ: void
Beschreibung: Fügt einen einzelnen Dataverse-Tabellennamen zur Lokalisierung hinzu.