ICurrencyCache

O ICurrencyCache serviço fornece acesso em cache ao conjunto da transactioncurrency organização, além da moeda base da organização. As moedas são carregadas como um único snapshot no primeiro acesso e atualizadas em uma janela deslizante grosseira — administradores raramente adicionam novas moedas, então o cache troca uma pequena área de memória para eliminar consultas por registro de moeda no caminho quente de registro-recuperação.

População Automática nos Registros

Normalmente você não precisa tocar ICurrencyCache diretamente. Sempre que a busca de um registro inclui pelo menos uma coluna de dinheiro, o servidor projeta transactioncurrencyid automaticamente e anexa a moeda resolvida à propriedade do Currency registro. MoneyEdit consome isso para renderizar o símbolo correto em seu adorno inicial.

React
Blazor

Acesso Direto

Para código personalizado do lado do servidor que precisa buscar uma moeda por id, enumerar todas as moedas na organização (um seletor de moeda, um display de taxa de câmbio) ou resolver a moeda base, injete ICurrencyCache:

Dica

ICurrencyCache é apenas do lado do servidor. Código do navegador que precisa da moeda da linha é TableRecord.Currency lido (Blazor) / record.currency (React) diretamente — preenchido automaticamente quando o registro carrega uma coluna de dinheiro.

ICurrencyCache Interface

Métodos

Nome
Parâmetros
Tipo
Descrição
GetGuid id
Currency?
Devolve a moeda com o transactioncurrencyid fornecido, ou null quando não existe registro correspondente no Dataverse.
GetAllIReadOnlyDictionary<Guid, Currency>
Retorna todas as moedas configuradas na organização, indexadas por id. Carregado como um single snapshot — Os chamadores que iteram o dicionário não verão atualizações parciais se o O cache atualiza no meio da enumeração.
GetAllAsyncCancellationToken token
Task<IReadOnlyDictionary<Guid, Currency>>
Retorna assíncronamente todas as moedas configuradas na organização, chaveadas por id.
GetAsyncGuid id
CancellationToken token
Task<Currency>
Retorna assíncronamente a moeda com o transactioncurrencyid dado, ou nulo quando não existe registro correspondente.
GetBaseCurrencyCurrency?
A moeda base da organização, resolvida a partir de organization.basecurrencyid. Usado como recurso B para registros cujo transactioncurrencyid é nulo — Típico para mesas que não participam de multimoeda de forma alguma. Retornos nulo se o registro da organização não puder ser resolvido (o que também seria indicam um problema mais profundo de conectividade Dataverse).
GetBaseCurrencyAsyncCancellationToken token
Task<Currency>
De forma assíncrona, retorna a moeda base da organização.
Nome: Get
Parâmetros: Guid id
Tipo: Currency?
Descrição: Devolve a moeda com o transactioncurrencyid fornecido, ou null quando não existe registro correspondente no Dataverse.
Nome: GetAll
Tipo: IReadOnlyDictionary<Guid, Currency>
Descrição: Retorna todas as moedas configuradas na organização, indexadas por id. Carregado como um single snapshot — Os chamadores que iteram o dicionário não verão atualizações parciais se o O cache atualiza no meio da enumeração.
Nome: GetAllAsync
Parâmetros: CancellationToken token
Tipo: Task<IReadOnlyDictionary<Guid, Currency>>
Descrição: Retorna assíncronamente todas as moedas configuradas na organização, chaveadas por id.
Nome: GetAsync
Parâmetros: Guid id
CancellationToken token
Tipo: Task<Currency>
Descrição: Retorna assíncronamente a moeda com o transactioncurrencyid dado, ou nulo quando não existe registro correspondente.
Nome: GetBaseCurrency
Tipo: Currency?
Descrição: A moeda base da organização, resolvida a partir de organization.basecurrencyid. Usado como recurso B para registros cujo transactioncurrencyid é nulo — Típico para mesas que não participam de multimoeda de forma alguma. Retornos nulo se o registro da organização não puder ser resolvido (o que também seria indicam um problema mais profundo de conectividade Dataverse).
Nome: GetBaseCurrencyAsync
Parâmetros: CancellationToken token
Tipo: Task<Currency>
Descrição: De forma assíncrona, retorna a moeda base da organização.

Currency Classe

Propriedades

Nome
Tipo
Padrão
Descrição
ExchangeRatedecimal
1
Taxa de câmbio contra a moeda base da organização, a partir da taxa de câmbio. 1.0 para a própria moeda base. Superfície principalmente para exibição diagnóstica/avançada Cenários — Editores não realizam a conversão localmente.
IsoCodestring
O código ISO 4217 de três letras (por exemplo, USD, EUR, JPY). Leia de isocurrencycode. Útil para rótulos ARIA e opções de formatação conscientes da cultura.
Namestring
O nome da moeda localizado vem do nome da moeda (por exemplo, Dólar Americano). Usados em pickers, tooltips e texto de acessibilidade.
Precisionint
2
Casas decimais para exibir, provenientes do currencyprecision. Volta a ser 2 quando o Dataverse sai do campo nulo. Independentemente de MoneyMetadata.Precision, que é a precisão em nível de coluna; esse é o padrão em nível de moeda.
Symbolstring
O símbolo de exibição Dataverse armazena no símbolo de moeda — até 5 caracteres, normalmente um único glifo Unicode ($, , £, ¥), mas ocasionalmente, uma sequência curta para moedas que não possuem forma de glifo único (Fr, kr, R$) ou valores personalizados específicos de cada organização. Traduzido literalmente no editor — o recurso de recurso Unicode + fonte cobre todos os glifos; sem sidecar SVG.
Nome: ExchangeRate
Tipo: decimal
Padrão: 1
Descrição: Taxa de câmbio contra a moeda base da organização, a partir da taxa de câmbio. 1.0 para a própria moeda base. Superfície principalmente para exibição diagnóstica/avançada Cenários — Editores não realizam a conversão localmente.
Nome: IsoCode
Tipo: string
Descrição: O código ISO 4217 de três letras (por exemplo, USD, EUR, JPY). Leia de isocurrencycode. Útil para rótulos ARIA e opções de formatação conscientes da cultura.
Nome: Name
Tipo: string
Descrição: O nome da moeda localizado vem do nome da moeda (por exemplo, Dólar Americano). Usados em pickers, tooltips e texto de acessibilidade.
Nome: Precision
Tipo: int
Padrão: 2
Descrição: Casas decimais para exibir, provenientes do currencyprecision. Volta a ser 2 quando o Dataverse sai do campo nulo. Independentemente de MoneyMetadata.Precision, que é a precisão em nível de coluna; esse é o padrão em nível de moeda.
Nome: Symbol
Tipo: string
Descrição: O símbolo de exibição Dataverse armazena no símbolo de moeda — até 5 caracteres, normalmente um único glifo Unicode ($, , £, ¥), mas ocasionalmente, uma sequência curta para moedas que não possuem forma de glifo único (Fr, kr, R$) ou valores personalizados específicos de cada organização. Traduzido literalmente no editor — o recurso de recurso Unicode + fonte cobre todos os glifos; sem sidecar SVG.