Blazor.SessionStorage.Server
2.0.1
Renaming package - dropped the ".Server" ending segment.
dotnet add package Blazor.SessionStorage.Server --version 2.0.1
NuGet\Install-Package Blazor.SessionStorage.Server -Version 2.0.1
<PackageReference Include="Blazor.SessionStorage.Server" Version="2.0.1" />
paket add Blazor.SessionStorage.Server --version 2.0.1
#r "nuget: Blazor.SessionStorage.Server, 2.0.1"
// Install Blazor.SessionStorage.Server as a Cake Addin #addin nuget:?package=Blazor.SessionStorage.Server&version=2.0.1 // Install Blazor.SessionStorage.Server as a Cake Tool #tool nuget:?package=Blazor.SessionStorage.Server&version=2.0.1
Blazorators: The Source Generated sessionStorage
JavaScript Interop library for Blazor Server
The Blazor.SessionStorage
package consumes the Blazor.SourceGenerators
package. It exposes a source generated IStorageService
interface specific to Blazor WebAssembly and the sessionStorage
Web API.
Get started
After the NuGet package is added as a reference, call the AddSessionStorageServices
method to register the IStorageService
service type.
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddSessionStorageServices();
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 IStorageService
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 IStorageService
{
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.clear</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/clear"></a>
/// </summary>
ValueTask ClearAsync();
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.getItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/getItem"></a>
/// </summary>
ValueTask<string?> GetItemAsync(string key);
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.key</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/key"></a>
/// </summary>
ValueTask<string?> KeyAsync(double index);
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.removeItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/removeItem"></a>
/// </summary>
ValueTask RemoveItemAsync(string key);
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.setItem</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/setItem"></a>
/// </summary>
ValueTask SetItemAsync(string key, string value);
/// <summary>
/// Source generated implementation of <c>window.sessionStorage.length</c>.
/// <a href="https://developer.mozilla.org/docs/Web/API/Storage/length"></a>
/// </summary>
ValueTask<double> Length { get; }
}
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
- Microsoft.Extensions.DependencyInjection (>= 6.0.0)
- Microsoft.Extensions.Primitives (>= 6.0.0)
- Microsoft.JSInterop (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.