Blazor.Geolocation
2.0.3
See the version list below for details.
dotnet add package Blazor.Geolocation --version 2.0.3
NuGet\Install-Package Blazor.Geolocation -Version 2.0.3
<PackageReference Include="Blazor.Geolocation" Version="2.0.3" />
paket add Blazor.Geolocation --version 2.0.3
#r "nuget: Blazor.Geolocation, 2.0.3"
// Install Blazor.Geolocation as a Cake Addin #addin nuget:?package=Blazor.Geolocation&version=2.0.3 // Install Blazor.Geolocation as a Cake Tool #tool nuget:?package=Blazor.Geolocation&version=2.0.3
Blazorators: The Source Generated geolocation
JavaScript Interop library for Blazor
The Blazor.Geolocation
package consumes the Blazor.SourceGenerators
package. It exposes a source generated IGeolocation
interface specific to Blazor WebAssembly and the geolocation
Web API.
Get started
After the NuGet package is added as a reference, call the AddGeolocationServices
method to register the IGeolocationService
service type.
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddGeolocationServices();
builder.Services.AddRazorPages();
builder.Services.AddServerSideBlazor();
var app = builder.Build();
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.MapControllers();
app.MapBlazorHub();
app.MapFallbackToPage("/_Host");
app.Run();
Anywhere needed within your Razor component, or Blazor client code — either @inject
or [Inject]
the IGeolocationService
type. The interface takes the following shape:
#nullable enable
namespace Microsoft.JSInterop;
/// <summary>
/// Source generated interface definition of the <c>Geolocation</c> type.
/// </summary>
public interface IGeolocationService
{
/// <summary>
/// Source generated implementation of <c>window.navigator.geolocation.clearWatch</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Geolocation/clearWatch"></a>
/// </summary>
ValueTask ClearWatchAsync(double watchId);
/// <summary>
/// Source generated implementation of <c>window.navigator.geolocation.getCurrentPosition</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Geolocation/getCurrentPosition"></a>
/// </summary>
/// <param name="component">The calling Razor (or Blazor) component.</param>
/// <param name="onSuccessCallbackMethodName">Expects the name of a
/// <c>"JSInvokableAttribute"</c> C# method with the following
/// <c>System.Action{GeolocationPosition}"</c>.</param>
/// <param name="onErrorCallbackMethodName">Expects the name of a
/// <c>"JSInvokableAttribute"</c> C# method with the following
/// <c>System.Action{GeolocationPositionError}"</c>.</param>
/// <param name="options">The <c>PositionOptions</c> value.</param>
ValueTask GetCurrentPositionAsync<TComponent>(
TComponent component,
string onSuccessCallbackMethodName,
string? onErrorCallbackMethodName = null,
PositionOptions? options = null)
where TComponent : class;
/// <summary>
/// Source generated implementation of <c>window.navigator.geolocation.watchPosition</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Geolocation/watchPosition"></a>
/// </summary>
/// <param name="component">The calling Razor (or Blazor) component.</param>
/// <param name="onSuccessCallbackMethodName">Expects the name of a
/// <c>"JSInvokableAttribute"</c> C# method with the following
/// <c>System.Action{GeolocationPosition}"</c>.</param>
/// <param name="onErrorCallbackMethodName">Expects the name of a
/// <c>"JSInvokableAttribute"</c> C# method with the following
/// <c>System.Action{GeolocationPositionError}"</c>.</param>
/// <param name="options">The <c>PositionOptions</c> value.</param>
ValueTask<double> WatchPositionAsync<TComponent>(
TComponent component,
string onSuccessCallbackMethodName,
string? onErrorCallbackMethodName = null,
PositionOptions? options = null)
where TComponent : class;
}
Add JavaScript dependency
In the _Host.cshtml file, add the following:
<script src="_content/Blazor.Geolocation/blazorators.geolocation.g.js"></script>
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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 was computed. 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. |
-
net6.0
- Blazor.Serialization (>= 2.0.3)
- Microsoft.AspNetCore.Components.Web (>= 6.0.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Blazor.Geolocation:
Package | Downloads |
---|---|
Hexalith.Infrastructure.ClientAppOnServer
Hexalith is a set of libraries to build a micro-service architecture. |
|
Hexalith.UI.PostalAddresses
Hexalith is a set of libraries to build a micro-service architecture. |
|
Hexalith.PostalAddresses.UI
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
9.0.0 | 272 | 11/22/2024 |
8.0.0 | 16,652 | 11/17/2023 |
8.0.0-rc.2.23480.2 | 403 | 10/13/2023 |
7.0.3 | 2,845 | 2/15/2023 |
7.0.2 | 321 | 2/7/2023 |
7.0.1 | 563 | 1/24/2023 |
7.0.0 | 431 | 1/11/2023 |
2.0.11 | 1,002 | 10/10/2022 |
2.0.10 | 519 | 5/19/2022 |
2.0.9 | 509 | 4/18/2022 |
2.0.8 | 491 | 4/14/2022 |
2.0.7 | 481 | 4/14/2022 |
2.0.6 | 496 | 4/7/2022 |
2.0.5 | 483 | 4/5/2022 |
2.0.3 | 465 | 4/5/2022 |
2.0.2 | 466 | 4/4/2022 |
2.0.1 | 600 | 4/4/2022 |