Blazor.LocalStorage.WebAssembly
8.0.0
dotnet add package Blazor.LocalStorage.WebAssembly --version 8.0.0
NuGet\Install-Package Blazor.LocalStorage.WebAssembly -Version 8.0.0
<PackageReference Include="Blazor.LocalStorage.WebAssembly" Version="8.0.0" />
paket add Blazor.LocalStorage.WebAssembly --version 8.0.0
#r "nuget: Blazor.LocalStorage.WebAssembly, 8.0.0"
// Install Blazor.LocalStorage.WebAssembly as a Cake Addin #addin nuget:?package=Blazor.LocalStorage.WebAssembly&version=8.0.0 // Install Blazor.LocalStorage.WebAssembly as a Cake Tool #tool nuget:?package=Blazor.LocalStorage.WebAssembly&version=8.0.0
Blazorators: The Source Generated localStorage
JavaScript Interop library for Blazor WebAssembly
The Blazor.LocalStorage.WebAssembly
package consumes the Blazor.SourceGenerators
package. It exposes a source generated IStorageService
interface specific to Blazor WebAssembly and the localStorage
Web API.
Get started
After the NuGet package is added as a reference, call the AddLocalStorageServices
method to register the ILocalStorageService
service type.
using Microsoft.AspNetCore.Components.Web;
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.Add<App>("#app");
builder.RootComponents.Add<HeadOutlet>("head::after");
builder.Services.AddScoped(
sp => new HttpClient
{
BaseAddress = new Uri(builder.HostEnvironment.BaseAddress)
});
builder.Services.AddLocalStorageServices();
await builder.Build().RunAsync();
Anywhere needed within your Razor component, or Blazor client code — either @inject
or [Inject]
the ILocalStorageService
type. The interface takes the following shape:
using Blazor.Serialization.Extensions;
using System.Text.Json;
#nullable enable
namespace Microsoft.JSInterop;
/// <summary>
/// Source generated interface definition of the <c>Storage</c> type.
/// </summary>
public interface ILocalStorageService
{
/// <summary>
/// Source generated implementation of <c>window.localStorage.clear</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/clear"></a>
/// </summary>
void Clear();
/// <summary>
/// Source generated implementation of <c>window.localStorage.getItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/getItem"></a>
/// </summary>
TResult? GetItem<TResult>(string key, JsonSerializerOptions? options = null);
/// <summary>
/// Source generated implementation of <c>window.localStorage.key</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/key"></a>
/// </summary>
string? Key(double index);
/// <summary>
/// Source generated implementation of <c>window.localStorage.removeItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/removeItem"></a>
/// </summary>
void RemoveItem(string key);
/// <summary>
/// Source generated implementation of <c>window.localStorage.setItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/setItem"></a>
/// </summary>
void SetItem<TArg>(string key, TArg value, JsonSerializerOptions? options = null);
/// <summary>
/// Source generated implementation of <c>window.localStorage.length</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/length"></a>
/// </summary>
double Length { get; }
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. 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. |
-
net7.0
- Blazor.Serialization (>= 8.0.0)
- Microsoft.Extensions.DependencyInjection (>= 7.0.0)
- Microsoft.Extensions.Primitives (>= 7.0.0)
- Microsoft.JSInterop (>= 7.0.14)
-
net8.0
- Blazor.Serialization (>= 8.0.0)
- Microsoft.Extensions.DependencyInjection (>= 8.0.0)
- Microsoft.Extensions.Primitives (>= 8.0.0)
- Microsoft.JSInterop (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (3)
Showing the top 3 popular GitHub repositories that depend on Blazor.LocalStorage.WebAssembly:
Repository | Stars |
---|---|
Azure-Samples/azure-search-openai-demo-csharp
A sample app for the Retrieval-Augmented Generation pattern running in Azure, using Azure Cognitive Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences.
|
|
IEvangelist/signalr-chat
A chat app built with Blazor WebAssembly, hosted on ASP.NET Core, with the latest C# and SignalR -- need I say more?
|
|
IEvangelist/learning-blazor
The application for the "Learning Blazor: Build Single Page Apps with WebAssembly and C#" O'Reilly Media book by David Pine.
|
Version | Downloads | Last updated |
---|---|---|
8.0.0 | 43,462 | 11/17/2023 |
8.0.0-rc.2.23480.2 | 3,293 | 10/13/2023 |
7.0.3 | 24,246 | 2/15/2023 |
7.0.2 | 296 | 2/7/2023 |
7.0.1 | 360 | 1/24/2023 |
7.0.0 | 6,488 | 1/11/2023 |
2.0.11 | 3,612 | 10/10/2022 |
2.0.10 | 6,723 | 5/19/2022 |
2.0.9 | 589 | 4/18/2022 |
2.0.8 | 440 | 4/14/2022 |
2.0.7 | 431 | 4/14/2022 |
2.0.6 | 461 | 4/7/2022 |
2.0.5 | 853 | 4/5/2022 |
2.0.3 | 436 | 4/5/2022 |
2.0.2 | 432 | 4/4/2022 |
2.0.1 | 434 | 4/4/2022 |
1.5.0 | 451 | 3/29/2022 |
1.4.5 | 476 | 3/26/2022 |
1.4.3 | 428 | 3/25/2022 |
1.4.2 | 457 | 3/23/2022 |
1.4.0 | 442 | 3/22/2022 |
1.3.3 | 448 | 3/18/2022 |
1.3.1 | 428 | 3/16/2022 |
1.3.0 | 441 | 3/16/2022 |
1.2.0 | 534 | 3/13/2022 |
1.1.1 | 556 | 3/8/2022 |
1.1.0 | 438 | 3/5/2022 |
1.0.5 | 446 | 3/4/2022 |
1.0.4 | 458 | 3/3/2022 |
1.0.3 | 481 | 2/24/2022 |
1.0.2 | 458 | 2/22/2022 |
1.0.1 | 444 | 2/22/2022 |
1.0.0 | 680 | 2/22/2022 |