Admin de localisation
PowerPortalsPro propose un LocalizationAdmin composant — un panneau clé en main, verrouillé par SystemAdmin, pour faire fonctionner le pipeline de localisation de chaînes à l’exécution. Entrez <LocalizationAdmin /> dans une page verrouillée par rôle et un administrateur peut voir comment le cache de localisation est configuré et construit, le reconstruire sans redémarrer l’hôte, traduire automatiquement les fichiers de localisation, et télécharger un instantané fusionné par culture. La partie structure fait le gros du travail ; Votre portail fournit la page, la porte de rôle et le lien de navigation — la même division que la page Administrateur du Site utilise.
Ce que montre le panneau
LocalizationAdmin Affiche plusieurs sections, chacune soutenue par les services de localisation du cadre :
- Configuration — Un résumé en lecture seule de la façon dont le warmup est câblé — si chaque table disponible est localisée ou seulement un ensemble configuré, les tables à localiser, le schéma de chemin des ressources web, les répertoires et fichiers de localisation enregistrés, ainsi que la culture par défaut. Celles-ci reflètent les
LocalizationOptionsregistres de votre hôte. - Traduire un fichier — Un embedded
LocalizationTranslatorqui traduit automatiquement un fichier de localisation dans une autre culture. Il s’auto-verrouille sur la disponibilité — ne se manifestant rien lorsqu’aucun fournisseur de traduction n’est configuré, ni une invite d’installation lorsque la solution gérée manque. La page de documentation de la traduction le traite en entier. - Inspecter et télécharger les clés fusionnées — Pour chaque culture qui possède des clés dans le cache, vous obtenez deux actions. Inspect ouvre une boîte de dialogue listant chaque clé fusionnée avec sa valeur résolue et la source qui l’a fournie — une grille triable et redimensionnable que vous pouvez filtrer par clé, valeur ou source, ce qui permet de localiser précisément d’où vient une chaîne et quelle source en supprime une autre. Download sauvegarde le JSON de localisation fusionné pour cette culture — l’union de toutes les sources (métadonnées Dataverse, ressources web et fichiers de dossiers) résolues en un seul fichier — et est également disponible depuis la boîte d’affichage d’inspection.
- Sources — Une grille des enregistrements de charge par source du dernier échauffement, dans l’ordre de chargement — incluant le nombre de clés que chaque source a apportées et combien d’entre elles ont remplacé une valeur antérieure. La façon la plus rapide de comprendre pourquoi une chaîne se résolvait ainsi.
- Rechargement — Reconstruit le cache de localisation de chaînes à partir de chaque source configurée sans redémarrer l’hôte. La reconstruction est atomique, donc les lecteurs continuent de voir les valeurs précédentes jusqu’à ce que le nouveau dictionnaire soit prêt.
Le câblage
Comme la page Administrateur de Site, LocalizationAdmin elle est verrouillée derrière la réclamation de rôle synthétique SystemAdmin estampillée — SystemAdminClaimsTransformer la page de documentation de l’Administrateur de Site explique comment cette réclamation est configurée. Placez le composant dans une page verrouillée par rôle :
@attribute [Route("admin/localization")]
@attribute [Authorize(Roles = "SystemAdmin")]
@using PowerPortalsPro.Web.Blazor.FluentUI.Components
<AuthorizeView Roles="SystemAdmin">
<Authorized>
<LocalizationAdmin />
</Authorized>
</AuthorizeView>
Faites-le apparaître dans le GPS
Emballez l’entrée de navigation pour <AuthorizeView Roles="SystemAdmin"> que les non-administrateurs ne voient pas de lien qu’ils ne peuvent pas suivre :
<AuthorizeView Roles="SystemAdmin">
<Authorized>
<FluentNavGroup Title="Administration" Icon="@(new Size20.WrenchSettings())">
<FluentNavLink Href="admin/localization"
Icon="@(new Size20.LocalLanguage())">
Localisation
</FluentNavLink>
</FluentNavGroup>
</Authorized>
</AuthorizeView>
Contrôler ce qui est localisé
Le panneau de configuration reflète les LocalizationOptions registres de votre hôte. LocalizeAllAvailableTables alterne entre la localisation de chaque table et seulement un ensemble explicite ajouté via AddTableToLocalize; les paramètres de répertoire, de fichier et de ressources web indiquent au warmup où trouver les sources de localisation basées sur dossiers et ressources web. L’ensemble complet des boutons se trouve dans la référence API ci-dessous.
À lire aussi : la page de traduction
Le panneau traduisant un fichier intégré ici est le même
LocalizationTranslatorque documenté sur la page Traduction, qui explique la configuration d’un fournisseur de traduction (par exemple Azure AI Translator) et l’installation de la solution gérée qui le soutient.
Référence API
LocalizationOptions détermine ce que le panneau de configuration met en avant et ce dont s’inspire l’échauffement. Ses membres sont résumés ci-dessous.
LocalizationOptions Classe
Propriétés
Nom | Type | Par défaut | Description |
|---|---|---|---|
DefaultCulture | CultureInfo | La culture par défaut utilisée lorsqu’aucune culture spécifique n’est demandée. | |
LocalizationDirectories | IReadOnlyList<string> | La liste des chemins de répertoire à analyser pour les fichiers de localisation. | |
LocalizationFiles | IReadOnlyList<string> | La liste des chemins de fichiers individuels pour charger les chaînes de localisation. | |
LocalizeAllAvailableTables | bool | True | Lorsque LocalizationOptions.TablesToLocalize ignoré. Régler sur AddTableToLocalize(System.String) / IEnumerable{System.String}). |
TablesToLocalize | IReadOnlyList<string> | Les noms des tables Dataverse dont les métadonnées (étiquettes, choix, vues) doivent être exportées sous forme de chaînes localisées. Ignoré quand LocalizationOptions.LocalizeAllAvailableTables c’est | |
UrlCultureStrategy | UrlCultureStrategy | PathPrefix | Contrôle si (et comment) la culture active est reflétée dans l’URL de la requête. Par défaut à UrlCultureStrategy.PathPrefix (culture par défaut nue, d’autres cultures sous un Options.UrlCultureStrategy pour les modes disponibles. N’a un effet que sur les sites multiculturels. |
DefaultCultureLocalizationDirectoriesLocalizationFilesLocalizeAllAvailableTablesLocalizationOptions.TablesToLocalize ignoré. Régler sur AddTableToLocalize(System.String) / IEnumerable{System.String}). TablesToLocalizeLocalizationOptions.LocalizeAllAvailableTables c’est UrlCultureStrategyUrlCultureStrategy.PathPrefix (culture par défaut nue, d’autres cultures sous un Options.UrlCultureStrategy pour les modes disponibles. N’a un effet que sur les sites multiculturels.Méthodes
Nom | Paramètres | Type | Description |
|---|---|---|---|
AddLocalizationDirectory | string relativeDirectoryPath | void | Ajoute un chemin de répertoire pour scanner les fichiers de localisation. |
AddLocalizationFile | string relativeFilePath | void | Ajoute un seul chemin de fichier de localisation à la liste. |
AddTablesToLocalize | IEnumerable<string> tables | void | Ajoute une collection de noms de tables Dataverse pour localiser. |
AddTableToLocalize | string tableName | void | Ajoute un seul nom de table Dataverse pour localiser. |
AddLocalizationDirectoryAddLocalizationFileAddTablesToLocalizeAddTableToLocalize