Working with international standards data can be tricky. It is often hard to find and even harder to keep up to date across multiple projects. This library gives .NET developers a straightforward alternative to building or collecting their own data. Its simple interface lets you access a wide range of information with minimal code.
The library is broken into smaller NuGet packages so you can pick only the standards you need, keeping your projects lean and clutter-free. If you want everything, the main package bundles all sub-packages for convenience.
This package includes international standard country codes, along with related information that may be useful in different contexts.
- Country codes (numeric, alpha-2, alpha-3)
- Common, official and native country names
- Regions and capital cities
- Spoken languages and active currencies
- International dialing codes
Access the list of countries or regions using predefined properties in the ISO3166 class, or filter countries by region.
var countries = ISO3166.Countries;
var regions = ISO3166.Regions;
var europe = ISO3166.GetCountriesByRegion(Region.Europe);
var northernEurope = ISO3166.GetCountriesBySubregion(Subregion.NorthernEurope);Alternatively, you can get specific countries using their predefined country property or their international codes:
var canada = CountryInfo.Canada;
var germany = ISO3166.GetCountryByCode("276");
var denmark = ISO3166.GetCountryByCode("DK");
var unitedStates = ISO3166.GetCountryByCode("USA");public record CountryInfo
{
public string CommonName { get; init; }
public string CommonNativeName { get; init; }
public string OfficialName { get; init; }
public string OfficialNativeName { get; init; }
public string NumericCode { get; init; }
public string TwoLetterCode { get; init; }
public string ThreeLetterCode { get; init; }
public string Region { get; init; }
public string Subregion { get; init; }
public string Capital { get; init; }
public Dictionary<string, string> Languages { get; init; }
public Dictionary<string, string> Currencies { get; init; }
public string DialingCode { get; init; }
}Each model includes a custom string representation for easy printing and debugging:
Common Name: Denmark
Common Native Name: Danmark
Official Name: Kingdom of Denmark
Official Native Name: Kongeriget Danmark
Numeric Code: 208
Two Letter Code: DK
Three Letter Code: DNK
Region: Europe
Subregion: Northern Europe
Capital: Copenhagen
Languages: Danish (DAN)
Currencies: Danish krone (DKK)
Dialing Code: +45
This package includes international standard currency codes, along with related information that may be useful in different contexts.
- Currency codes (numeric, alphabetic)
- Official, native, and common currency names
- Currency symbols
- Minor units
- Country associations
- Commodities and specialized currencies
Access the different lists of currencies using predefined properties in the ISO4217 class.
var currencies = ISO4217.Currencies;
var specializedCurrencies = ISO4217.SpecializedCurrencies;
var commodities = ISO4217.Commodities;Alternatively, you can get specific currencies using their predefined currency property or their international codes:
var euro = CurrencyInfo.Euro;
var danishKrone = ISO4217.GetCurrencyByCode("DKK");
var unitedStatesDollar = ISO4217.GetCurrencyByCode("840");public partial record CurrencyInfo
{
public string CommonName { get; init; }
public string NativeName { get; init; }
public string OfficialName { get; init; }
public string? Symbol { get; init; }
public string NumericCode { get; init; }
public string AlphabeticCode { get; init; }
public Dictionary<string, string> Countries { get; init; }
public int? MinorUnit { get; init; }
}Each model includes a custom string representation for easy printing and debugging:
Common Name: Krone
Native Name: Dansk Krone
Official Name: Danish Krone
Symbol: kr.
Numeric Code: 208
Alphabetic Code: DKK
Countries: Kingdom of Denmark (DNK), Faroe Islands (FRO), Greenland (GRL)
Minor Unit: 2
Additional international standards will be added over time, either upon request or as needed.
- ISO3166 (Country codes)
- ISO4217 (Currency codes)
- ISO639 (Language codes)