GoogleMaps.LocationServices
2.0.0
See the version list below for details.
dotnet add package GoogleMaps.LocationServices --version 2.0.0
NuGet\Install-Package GoogleMaps.LocationServices -Version 2.0.0
<PackageReference Include="GoogleMaps.LocationServices" Version="2.0.0" />
<PackageVersion Include="GoogleMaps.LocationServices" Version="2.0.0" />
<PackageReference Include="GoogleMaps.LocationServices" />
paket add GoogleMaps.LocationServices --version 2.0.0
#r "nuget: GoogleMaps.LocationServices, 2.0.0"
#:package GoogleMaps.LocationServices@2.0.0
#addin nuget:?package=GoogleMaps.LocationServices&version=2.0.0
#tool nuget:?package=GoogleMaps.LocationServices&version=2.0.0
GoogleMaps.LocationServices
A lightweight .NET library for Google Maps geolocation workflows:
- geocoding (
address -> lat/lng) - reverse geocoding (
lat/lng -> address) - simple directions lookups
Install
# Package Manager
dotnet add package GoogleMaps.LocationServices --version 2.0.0
# or
PM> Install-Package GoogleMaps.LocationServices
Requirements
- A valid Google Maps API key
- Enable the Google APIs you intend to use (Geocoding API, Directions API if needed)
Supported targets
netstandard2.0net8.0
Quick examples
using GoogleMaps.LocationServices;
var client = new GoogleLocationService("YOUR_API_KEY");
var address = new AddressData
{
Address = "1600 Amphitheatre Pkwy",
City = "Mountain View",
State = "CA",
Zip = "94043",
Country = "USA"
};
// Forward geocode
var point = client.GetLatLongFromAddress(address);
System.Console.WriteLine(point == null
? "No match found"
: $"{address} => {point.Latitude}, {point.Longitude}");
// Reverse geocode
var reverse = client.GetAddressFromLatLang(37.422, -122.084);
System.Console.WriteLine(reverse);
// Directions (address to address)
var destination = new AddressData
{
Address = "407 N Maple Dr. #1",
City = "Beverly Hills",
State = "CA"
};
var directions = client.GetDirections(address, destination);
System.Console.WriteLine($"Directions status: {directions.StatusCode}");
System.Console.WriteLine($"Distance: {directions.Distance}, Duration: {directions.Duration}");
foreach (var step in directions.Steps)
{
System.Console.WriteLine($"- {step.Instruction} ({step.Distance})");
}
The package also supports the legacy no-key constructor:
var legacyClient = new GoogleLocationService();
For reliability and quota visibility, prefer using a valid API key.
Error handling
OVER_QUERY_LIMITthrowsWebExceptionwith an actionable message.REQUEST_DENIEDthrowsWebExceptionwhen the required Google Maps APIs are not enabled.
Testing
The repo includes a full unit test suite:
dotnet test --configuration Release
Current test target includes:
- geocode parsing
- reverse geocode parsing
- coordinates formatting and mapping
- directions parsing and failure states
Development
If you are contributing, open the solution and run:
dotnet restore
dotnet build
dotnet test
dotnet pack GoogleMaps.LocationServices/GoogleMaps.LocationServices.csproj --configuration Release
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on GoogleMaps.LocationServices:
| Package | Downloads |
|---|---|
|
TheFusionWorks.Platforms
These are base utility classes developed by The Fusion Works which other packages and applications are built off. |
|
|
Sonrai.ExtRS
Package Description |
|
|
Sonrai.ExtRSNET48
$ExtRS.NET48 is a .NET Framework 4.8 class library for extending the capabilities of Reporting Services. |
|
|
Vita4AI.Core
Official Vita4AI Core Package |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on GoogleMaps.LocationServices:
| Repository | Stars |
|---|---|
|
CodeMazeBlog/CodeMazeGuides
The main repository for all the Code Maze guides
|
Modernized for modern .NET SDK-style cross-platform targeting and tooling.