Notifications.Client
0.5.0-preview.1
This is a prerelease version of Notifications.Client.
There is a newer prerelease version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Notifications.Client --version 0.5.0-preview.1
NuGet\Install-Package Notifications.Client -Version 0.5.0-preview.1
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="Notifications.Client" Version="0.5.0-preview.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Notifications.Client" Version="0.5.0-preview.1" />
<PackageReference Include="Notifications.Client" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Notifications.Client --version 0.5.0-preview.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Notifications.Client, 0.5.0-preview.1"
#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.
#:package Notifications.Client@0.5.0-preview.1
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Notifications.Client&version=0.5.0-preview.1&prerelease
#tool nuget:?package=Notifications.Client&version=0.5.0-preview.1&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Notifications.Client
- Local Component → Component
- Server → Client
- Peer → Peer
How to install
Program.cs
builder.Services.AddSynchronizationServices();
_Imports.razor
@using Notifications.Client
Usage
Create a Sync context class
public class CountSync
{
public int Count { get; set; }
}
Example: Extending the Counter Page
@page "/counter"
<PageTitle>Counter</PageTitle>
<h1>Counter</h1>
<p role="status">Current count: @currentCount</p>
<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>
@code {
private int currentCount = 0;
[Inject]
private IScopedSynchronizeTarget<CountSync> Synchronizer { get; set; } = default;
protected override void OnInitialized() => Synchronizer.SetValue(new CountSync { Count = this.currentCount });
private void IncrementCount()
{
currentCount++;
Synchronizer.SetValue(new CountSync { Count = currentCount });
}
}
Example Listener component.
@implements IDisposable
@count
@code {
int count;
[Inject]
private IScopedSynchronizeTarget<CountSync> Synchronizer { get; set; } = default!;
protected override void OnInitialized()
{
Synchronizer.SynchronizeTargetChanged += OnSynchronizeTargetChanged;
base.OnInitialized();
}
private void OnSynchronizeTargetChanged(object? sender, SynchronizeTargetChangedArgs<CountSync> e)
{
this.count = e.Value.Count;
StateHasChanged();
}
public void Dispose()
{
if (Synchronizer is not null)
{
Synchronizer.SynchronizeTargetChanged -= OnSynchronizeTargetChanged;
}
}
}
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.5.0-preview.2 | 138 | 6/16/2023 |
0.5.0-preview.1 | 130 | 6/14/2023 |
Initial preview with component to component notifications