ICurrencyCache

Le ICurrencyCache service fournit un accès en cache à l’ensemble de transactioncurrency l’organisation ainsi qu’à la monnaie de base de l’organisation. Les monnaies sont chargées en instantané unique dès le premier accès et rafraîchies sur une fenêtre glissante grossière — les administrateurs ajoutent rarement de nouvelles monnaies, donc le cache échange une petite empreinte mémoire contre l’élimination des recherches par enregistrement sur le chemin de récupération rapide des enregistrements.

Population automatique sur les registres

En général, tu n’as pas besoin de toucher ICurrencyCache directement. Chaque fois que la récupération d’un enregistrement inclut au moins une colonne d’argent, le serveur projette transactioncurrencyid automatiquement et attache la monnaie résolue à la propriété de Currency l’enregistrement. MoneyEdit Elle consomme cela pour afficher le symbole correct dans son ornement de départ.

React
Blazor

Accès direct

Pour un code côté serveur personnalisé qui doit rechercher une monnaie par identifiant, énumérer chaque monnaie dans l’organisation (un sélectionneur de devise, un affichage du taux de change), ou résoudre la monnaie de base, injecter ICurrencyCache:

Conseil

ICurrencyCache est uniquement côté serveur. Le code côté navigateur qui nécessite la monnaie de la ligne s’affiche TableRecord.Currency directement (Blazor) / record.currency (React) — rempli automatiquement lorsque l’enregistrement contient une colonne d’argent.

ICurrencyCache Interface

Méthodes

Nom
Paramètres
Type
Description
GetGuid id
Currency?
Retourne la monnaie avec l’identifiant de transaction, ou nul lorsqu’aucun enregistrement correspondant n’existe dans Dataverse.
GetAllIReadOnlyDictionary<Guid, Currency>
Retourne toutes les devises configurées dans l’organisation, indexées par id. Chargé en simple Instantané — les appelants qui itèrent le dictionnaire ne verront pas de mises à jour partielles si le Le cache se rafraîchit en plein milieu de l’énumération.
GetAllAsyncCancellationToken token
Task<IReadOnlyDictionary<Guid, Currency>>
Retourne de manière asynchrone toutes les devises configurées dans l’organisation, indexées par id.
GetAsyncGuid id
CancellationToken token
Task<Currency>
Retourne de manière asynchrone la monnaie avec le transactioncurrencyid donné, ou nulle lorsqu’aucun enregistrement correspondant n’existe.
GetBaseCurrencyCurrency?
La monnaie de base de l’organisation, résolue depuis organization.basecurrencyid. Utilisé comme solution de secours pour les enregistrements dont l’id transactioncurrencyid est nul — C’est typique pour les tables qui ne participent pas du tout à la multi-monnaie. Résultats nulle si l’enregistrement d’organisation ne peut pas être résolu (ce qui serait aussi indiquent un problème de connectivité Dataverse plus profond).
GetBaseCurrencyAsyncCancellationToken token
Task<Currency>
De manière asynchrone, la monnaie de base de l’organisation.
Nom: Get
Paramètres: Guid id
Type: Currency?
Description: Retourne la monnaie avec l’identifiant de transaction, ou nul lorsqu’aucun enregistrement correspondant n’existe dans Dataverse.
Nom: GetAll
Type: IReadOnlyDictionary<Guid, Currency>
Description: Retourne toutes les devises configurées dans l’organisation, indexées par id. Chargé en simple Instantané — les appelants qui itèrent le dictionnaire ne verront pas de mises à jour partielles si le Le cache se rafraîchit en plein milieu de l’énumération.
Nom: GetAllAsync
Paramètres: CancellationToken token
Type: Task<IReadOnlyDictionary<Guid, Currency>>
Description: Retourne de manière asynchrone toutes les devises configurées dans l’organisation, indexées par id.
Nom: GetAsync
Paramètres: Guid id
CancellationToken token
Type: Task<Currency>
Description: Retourne de manière asynchrone la monnaie avec le transactioncurrencyid donné, ou nulle lorsqu’aucun enregistrement correspondant n’existe.
Nom: GetBaseCurrency
Type: Currency?
Description: La monnaie de base de l’organisation, résolue depuis organization.basecurrencyid. Utilisé comme solution de secours pour les enregistrements dont l’id transactioncurrencyid est nul — C’est typique pour les tables qui ne participent pas du tout à la multi-monnaie. Résultats nulle si l’enregistrement d’organisation ne peut pas être résolu (ce qui serait aussi indiquent un problème de connectivité Dataverse plus profond).
Nom: GetBaseCurrencyAsync
Paramètres: CancellationToken token
Type: Task<Currency>
Description: De manière asynchrone, la monnaie de base de l’organisation.

Currency Classe

Propriétés

Nom
Type
Par défaut
Description
ExchangeRatedecimal
1
Taux de change par rapport à la devise de base de l’organisation, à partir du taux de change. 1.0 pour la monnaie de base elle-même. Principalement utilisé pour le diagnostic / affichage avancé Scénarios — Les éditeurs n’effectuent pas de conversion localement.
IsoCodestring
Le code ISO 4217 à trois lettres (par exemple USD, EUR,JPY). Lire isocurrencycode. Utile pour les labels ARIA et les solutions de mise en forme conscientes de la culture.
Namestring
Le nom de la monnaie localisée vient de monnaiename (par exemple le dollar américain). Utilisés dans les sélecteurs, les infobulles et le texte d’accessibilité.
Precisionint
2
Des décimales à afficher, provenant de currencyprecision. Retour à 2 lorsque Dataverse laisse le champ nul. Indépendamment de MoneyMetadata.Precision, qui correspond à la précision au niveau de la colonne ; C’est le défaut de niveau monétaire.
Symbolstring
Le symbole d’affichage Dataverse stocke dans le symbole de la monnaie — jusqu’à 5 caractères, typiquement un seul glyphe Unicode ($, , £, ¥) mais Parfois, une courte chaîne pour les monnaies qui n’ont pas la forme d’un seul glyphe (Fr, kr, R$) ou des valeurs personnalisées spécifiques à chaque organisation. Rendu mot pour mot dans l’éditeur — Unicode + la fonte de secours couvre chaque glyphe ; Pas de side-car SVG.
Nom: ExchangeRate
Type: decimal
Par défaut: 1
Description: Taux de change par rapport à la devise de base de l’organisation, à partir du taux de change. 1.0 pour la monnaie de base elle-même. Principalement utilisé pour le diagnostic / affichage avancé Scénarios — Les éditeurs n’effectuent pas de conversion localement.
Nom: IsoCode
Type: string
Description: Le code ISO 4217 à trois lettres (par exemple USD, EUR,JPY). Lire isocurrencycode. Utile pour les labels ARIA et les solutions de mise en forme conscientes de la culture.
Nom: Name
Type: string
Description: Le nom de la monnaie localisée vient de monnaiename (par exemple le dollar américain). Utilisés dans les sélecteurs, les infobulles et le texte d’accessibilité.
Nom: Precision
Type: int
Par défaut: 2
Description: Des décimales à afficher, provenant de currencyprecision. Retour à 2 lorsque Dataverse laisse le champ nul. Indépendamment de MoneyMetadata.Precision, qui correspond à la précision au niveau de la colonne ; C’est le défaut de niveau monétaire.
Nom: Symbol
Type: string
Description: Le symbole d’affichage Dataverse stocke dans le symbole de la monnaie — jusqu’à 5 caractères, typiquement un seul glyphe Unicode ($, , £, ¥) mais Parfois, une courte chaîne pour les monnaies qui n’ont pas la forme d’un seul glyphe (Fr, kr, R$) ou des valeurs personnalisées spécifiques à chaque organisation. Rendu mot pour mot dans l’éditeur — Unicode + la fonte de secours couvre chaque glyphe ; Pas de side-car SVG.