mirror of
https://github.com/PacktPublishing/Web-Development-with-Blazor-Second-Edition.git
synced 2025-12-06 05:32:03 +01:00
33 lines
828 B
C#
33 lines
828 B
C#
namespace BlazorServer.Services;
|
|
using Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage;
|
|
using Components.Interfaces;
|
|
|
|
public class BlogProtectedBrowserStorage : IBrowserStorage
|
|
{
|
|
ProtectedSessionStorage Storage { get; set; }
|
|
public BlogProtectedBrowserStorage(ProtectedSessionStorage storage)
|
|
{
|
|
Storage = storage;
|
|
}
|
|
public async Task DeleteAsync(string key)
|
|
{
|
|
await Storage.DeleteAsync(key);
|
|
}
|
|
public async Task<T?> GetAsync<T>(string key)
|
|
{
|
|
var value = await Storage.GetAsync<T>(key);
|
|
if (value.Success)
|
|
{
|
|
return value.Value;
|
|
}
|
|
else
|
|
{
|
|
return default(T);
|
|
}
|
|
}
|
|
public async Task SetAsync(string key, object value)
|
|
{
|
|
await Storage.SetAsync(key, value);
|
|
}
|
|
}
|