Unified API
Build against shared abstractions in Geocoding.Core while swapping concrete provider implementations per environment.
One interface for forward geocoding, reverse geocoding, and migration-aware provider support across modern and compatibility services.
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using Geocoding;
using Geocoding.Google;
CancellationToken cancellationToken = default;
IGeocoder geocoder = new GoogleGeocoder("your-google-api-key");
IEnumerable<Address> addresses = await geocoder.GeocodeAsync(
"1600 Pennsylvania Ave NW Washington DC 20500",
cancellationToken);
Address first = addresses.First();
Console.WriteLine(first.FormattedAddress);
Console.WriteLine($"{first.Coordinates.Latitude}, {first.Coordinates.Longitude}");| Provider | Status | Best For | Guide |
|---|---|---|---|
| Google Maps | Supported | Broad global coverage and provider-specific address metadata | Google Maps |
| Azure Maps | Supported | New Microsoft-backed integrations | Azure Maps |
| HERE | Supported | HERE Geocoding and Search API consumers | HERE provider guide |
| MapQuest | Supported | Commercial MapQuest integrations | MapQuest |
| Bing Maps | Compatibility only | Existing enterprise deployments migrating off Bing | Bing Maps Compatibility |
| Yahoo | Compatibility only | Legacy code paths you still need to retire safely | Yahoo Compatibility |