Cutec.Blazor.WebAPIs
2.0.0
dotnet add package Cutec.Blazor.WebAPIs --version 2.0.0
NuGet\Install-Package Cutec.Blazor.WebAPIs -Version 2.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cutec.Blazor.WebAPIs" Version="2.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cutec.Blazor.WebAPIs --version 2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Cutec.Blazor.WebAPIs, 2.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Cutec.Blazor.WebAPIs as a Cake Addin #addin nuget:?package=Cutec.Blazor.WebAPIs&version=2.0.0 // Install Cutec.Blazor.WebAPIs as a Cake Tool #tool nuget:?package=Cutec.Blazor.WebAPIs&version=2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Blazor.WebAPIs
This is a Blazor library for accessing APIs provided by web browser: IndexedDB, window.localStorage...(more to come)
To use the library
- Instal NuGet package:
Cutec.Blazor.WebAPIs
. - Add script reference to
index.html
:<script src="_content/Cutec.Blazor.WebAPIs/All.js"></script>
- Register services;
builder.Services.AddBlazorWebAPIs();
. Alternatively, you can register the needed indivitial API, ex.builder.Services.AddWebStorage();
IndexedDB APIs
Warning: If Key/AutoIncrement definition is changed, the object store will be re-created and data will be lost.
It is based on idb.
Inherit from IndexedDb
:
public class DbContext : IndexedDb
{
public ObjectStore<ToDo> ToDos { get; set; }
}
In Program.cs
builder.Services.AddIndexedDB<DbContext>();
var host = builder.Build();
await host.Services.UseIndexedDbAsync<DbContext>(options =>
{
options.Name = "MyDb";
options.Version = 1;
});
Inject DbContent into Components:
[Inject] private DbContext db { get; set; }
...
var toDos = await db.ToDos.GetAllAsync();
Retrieving
- GetByKeyAsync, GetFirstByKeyRangeAsync, GetFirstFromIndexAsync
- GetAllAsync, GetAllFromIndexAsync, GetAllByIndexValueAsync, GetAllByKeyListAsync
- GetAllKeysAsync, GetAllKeysFromIndexAsync, GetAllKeysByIndexValueAsync, GetFirstKeyAsync
- GetAllIndexValuesAsync
- CountAsync
Update
- PutAsync
- PutListAsync
Delete
- DeleteByKeyAsync
- DeleteByKeyListAsync
- ClearAsync
- ClearDbAsync
LocalStorage/SessionStorage
Inject LocalStorage
:
[Inject] private LocalStorage localStorage { get; set; }
APIs
int Length
string Key(int index)
string GetItem(string keyName)
void SetItem(string keyName, string keyValue)
void RemoveItem(string keyName)
void Clear()
T GetItem<T>(string keyName) where T : class
void SetItem<T>(string keyName, T item) where T : class
Geolocation
Inject and use Geolocation
.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1)
- Microsoft.JSInterop (>= 8.0.7)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.