Table of Contents

XeServiceCollectionExtensions Class

Definition

Namespace
Bodu.Financial.ExchangeRates
Assembly
Bodu.Financial.ExchangeRates.Xe.dll
Package
Bodu.Financial.ExchangeRates.Xe 0.7.1 (not published on nuget.org)
Source
XeServiceCollectionExtensions.cs

Provides a one-call entry point that registers the core Bodu.Financial services together with the XE.com exchange-rate provider.

public static class XeServiceCollectionExtensions
Inheritance
XeServiceCollectionExtensions
Inherited Members

Methods

AddXeExchangeRates(IServiceCollection, IConfiguration?, string, Action<XeRateProviderOptions>?)

Registers the core Bodu.Financial services and the XE.com exchange-rate provider.

public static IFinancialServiceBuilder AddXeExchangeRates(this IServiceCollection services, IConfiguration? configuration = null, string sectionName = "Financial:Xe", Action<XeRateProviderOptions>? configure = null)

Parameters

services IServiceCollection

The service collection to register into.

configuration IConfiguration

An optional configuration root. When supplied, FinancialOptions is bound from the Financial section and XeRateProviderOptions from sectionName.

sectionName string

The XE configuration section name. Defaults to Financial:Xe.

configure Action<XeRateProviderOptions>

An optional callback applied after XE configuration binding.

Returns

IFinancialServiceBuilder

An IFinancialServiceBuilder for further composition.

Examples

IServiceCollection services = new ServiceCollection();

services.AddXeExchangeRates(configuration, configure: options =>
{
    options.UserAgent = "my-app/1.0";
    options.HttpTimeout = TimeSpan.FromSeconds(15);
});

ServiceProvider provider = services.BuildServiceProvider();
var rates = provider.GetRequiredService<IDatedRateProvider>();

Exceptions

ArgumentNullException

Thrown when services is null.

ArgumentException

Thrown when sectionName is empty or white space.

Applies to

ProductVersions
.NET8, 10