Vorn.Entities.Client 9.1.2

dotnet add package Vorn.Entities.Client --version 9.1.2
                    
NuGet\Install-Package Vorn.Entities.Client -Version 9.1.2
                    
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="Vorn.Entities.Client" Version="9.1.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Vorn.Entities.Client" Version="9.1.2" />
                    
Directory.Packages.props
<PackageReference Include="Vorn.Entities.Client" />
                    
Project file
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 Vorn.Entities.Client --version 9.1.2
                    
#r "nuget: Vorn.Entities.Client, 9.1.2"
                    
#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 Vorn.Entities.Client@9.1.2
                    
#: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=Vorn.Entities.Client&version=9.1.2
                    
Install as a Cake Addin
#tool nuget:?package=Vorn.Entities.Client&version=9.1.2
                    
Install as a Cake Tool

Vorn.Entities.Client

The client package focuses on Blazor and typed SignalR consumption. It wraps an IEntityClient<TDto, TDescriptorDto> with a component base that manages hub connections, busy state, notifications, and error handling so Razor components remain mostly markup.

Install

dotnet add package Vorn.Entities.SignalR.Client
dotnet add package Vorn.Entities.Client

Bring in Vorn.Entities and Vorn.Entities.Server for the backing service/hub if they are not already referenced.

Configure SignalR access

  1. Connection factory – centralize HubConnection creation.
    public sealed class DocumentConnectionFactory(Uri hubUri) : IEntityConnectionFactory
    {
        public Task<HubConnection> CreateConnection<TDto>() where TDto : EntityDto
            => Task.FromResult(new HubConnectionBuilder()
                .WithUrl(hubUri)
                .WithAutomaticReconnect()
                .Build());
    }
    builder.Services.AddScoped<IEntityConnectionFactory, DocumentConnectionFactory>();
    
  2. Ambient interception – forward user/time context to the server.
    builder.Services.AddScoped<IEntityInterceptionProvider, AmbientEntityInterceptionProvider>();
    
  3. Typed client – inherit from EntityClient<TDto, TDescriptorDto> and register it with DI.
    public sealed class DocumentClient(
        IEntityConnectionFactory connections,
        IEntityInterceptionProvider interception)
        : EntityClient<DocumentDto, DocumentDescriptorDto>(connections, interception);
    
    builder.Services.AddScoped<DocumentClient>();
    

Build a component

EntityClientComponentBase<TClient, TDto, TDescriptorDto> supplies the CRUD helpers, busy flag, and notification pipeline. Derive a component base class and render your UI around the exposed state.

public abstract class DocumentListBase
    : EntityClientComponentBase<DocumentClient, DocumentDto, DocumentDescriptorDto>
{
    protected List<DocumentDto> Items { get; } = new();

    protected override async Task OnInitializedAsync()
    {
        await base.OnInitializedAsync();
        Items.AddRange(await Client.GetListAsync(Descriptor));
    }

    protected override async Task OnNotificationAsync(EntityNotification notification)
    {
        Items.Clear();
        Items.AddRange(await Client.GetListAsync(Descriptor));
    }
}

Razor usage:

@inherits DocumentListBase

@if (IsBusy)
{
    <p>Loading documents...</p>
}
else if (!string.IsNullOrEmpty(ErrorMessage))
{
    <p class="text-danger">@ErrorMessage</p>
}
else
{
    <ul>
        @foreach (var document in Items)
        {
            <li>@document.Title</li>
        }
    </ul>
}

Component options

  • AutoConnect (default true) controls whether the hub starts during OnInitializedAsync.
  • StopClientOnDispose disposes the hub when the component leaves the render tree.
  • EntityInterceptionConfig scopes user/time metadata across multiple calls.
  • Error callback surfaces exceptions so pages can show toasts or log failures.

Tips

  • Use SafeRunAsync for read-only operations that should toggle IsBusy and capture errors without throwing.
  • Override DisposeAsync when you allocate additional resources—remember to call await base.DisposeAsync().
  • Pair with generator-produced DTOs/descriptors to keep client/server contracts in sync.
Product 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.  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.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Vorn.Entities.Client:

Package Downloads
Vorn.Files.Client

This library is designed as part of web applications which are clients who get file hosting as a service from a Vorn.Files.Host.

Vorn.Entities.Interface

This library is designed to provide some basic interface services and components plus enabling entity management usage.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
9.1.2 443 11/16/2025
9.1.1 226 11/15/2025
9.1.0 173 11/15/2025
9.0.2 490 11/10/2025
9.0.1 220 11/9/2025
9.0.0 208 11/5/2025
8.8.0 259 11/2/2025
8.7.1 228 10/29/2025
8.7.0 238 10/27/2025
8.6.2 225 10/27/2025
8.6.1 203 10/25/2025
8.6.0 190 10/25/2025
8.6.0-rc4 192 10/25/2025
8.6.0-rc3 207 10/24/2025
8.6.0-rc2 255 10/23/2025
8.6.0-rc1 256 10/20/2025
8.5.1 162 10/18/2025
8.5.0 181 10/18/2025
8.4.2 225 10/16/2025
8.4.1 223 10/16/2025
8.4.0 237 10/16/2025
8.3.5 235 10/15/2025
8.3.4 222 10/15/2025
8.3.3 253 10/15/2025
8.3.1 246 10/14/2025
8.3.0 254 10/14/2025
8.3.0-rc4 226 10/14/2025
8.3.0-rc3 232 10/13/2025
8.3.0-rc2 219 10/13/2025
8.3.0-rc1 241 10/13/2025
8.2.0-rc9 237 10/13/2025
8.2.0-rc8 217 10/13/2025
8.2.0-rc7 216 10/12/2025
8.2.0-rc6 184 10/12/2025
8.2.0-rc5 181 10/12/2025
8.2.0-rc4 184 10/12/2025
8.2.0-rc3 161 10/12/2025
8.2.0-rc10 226 10/13/2025
8.2.0-rc1 143 10/11/2025
8.0.10-rc1 144 10/11/2025
5.0.1-preview.0.1 144 10/8/2025