ExchangePoint 1.0.0
See the version list below for details.
dotnet add package ExchangePoint --version 1.0.0
NuGet\Install-Package ExchangePoint -Version 1.0.0
<PackageReference Include="ExchangePoint" Version="1.0.0" />
<PackageVersion Include="ExchangePoint" Version="1.0.0" />
<PackageReference Include="ExchangePoint" />
paket add ExchangePoint --version 1.0.0
#r "nuget: ExchangePoint, 1.0.0"
#:package ExchangePoint@1.0.0
#addin nuget:?package=ExchangePoint&version=1.0.0
#tool nuget:?package=ExchangePoint&version=1.0.0
ExchangePoint
A lightweight .NET library for currency conversion with two providers:
- InMemoryExchangeRateProvider: set your own rates for offline or testing
- HttpExchangeRateProvider: fetches live rates on demand from exchangerate.host
- AutoRefreshExchangeRateProvider: keeps a cached table of latest rates for a base currency and refreshes periodically
Install
- From nuget.org (after you publish): dotnet add package ExchangePoint
Quick start
using ExchangePoint;
// Manual/offline var mem = new InMemoryExchangeRateProvider(); mem.SetRate("USD", "EUR", 0.92m); var eur = CurrencyConverter.Convert(100m, "USD", "EUR", mem); // 92.00
// Live on-demand using var http = new HttpExchangeRateProvider(); if (http.TryGetRate("USD", "TRY", out var rate)) { var tryAmount = CurrencyConverter.Convert(100m, rate); }
// Auto refresh (keeps latest rates for a base currency) using var auto = new AutoRefreshExchangeRateProvider(baseCurrency: "USD", refreshInterval: TimeSpan.FromMinutes(5)); // give it a moment for the first refresh, then query await Task.Delay(2000); if (auto.TryGetRate("USD", "EUR", out var live)) { var eur2 = CurrencyConverter.Convert(250m, live); }
Local pack and test
- Pack: dotnet pack -c Release -o ./nupkg
- Add local source (once): dotnet nuget add source "$(pwd)/nupkg" -n ExchangePointLocal
- Install into another project: dotnet add package ExchangePoint -s ExchangePointLocal
Publish to nuget.org
- Create an API key on https://www.nuget.org
- Push: dotnet nuget push ./nupkg/ExchangePoint.*.nupkg --api-key YOUR_KEY --source https://api.nuget.org/v3/index.json
Notes
- Live rates depend on the remote service (exchangerate.host). Availability and exact values may vary slightly by source.
- AutoRefresh provider is read-only; it caches rates for a base currency and answers cross-rates via that base.
- .NET 8, C# 12.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Initial release of ExchangePoint. Created by Davud Huseynov.