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 444 11/16/2025
9.1.1 227 11/15/2025
9.1.0 174 11/15/2025
9.0.2 491 11/10/2025
9.0.1 220 11/9/2025
9.0.0 209 11/5/2025
8.8.0 260 11/2/2025
8.7.1 230 10/29/2025
8.7.0 239 10/27/2025
8.6.2 226 10/27/2025
8.6.1 205 10/25/2025
8.6.0 192 10/25/2025
8.6.0-rc4 193 10/25/2025
8.6.0-rc3 209 10/24/2025
8.6.0-rc2 257 10/23/2025
8.6.0-rc1 256 10/20/2025
8.5.1 162 10/18/2025
8.5.0 182 10/18/2025
8.4.2 226 10/16/2025
8.4.1 223 10/16/2025
8.4.0 238 10/16/2025
8.3.5 236 10/15/2025
8.3.4 223 10/15/2025
8.3.3 254 10/15/2025
8.3.1 247 10/14/2025
8.3.0 255 10/14/2025
8.3.0-rc4 228 10/14/2025
8.3.0-rc3 233 10/13/2025
8.3.0-rc2 220 10/13/2025
8.3.0-rc1 241 10/13/2025
8.2.0-rc9 238 10/13/2025
8.2.0-rc8 218 10/13/2025
8.2.0-rc7 216 10/12/2025
8.2.0-rc6 186 10/12/2025
8.2.0-rc5 182 10/12/2025
8.2.0-rc4 185 10/12/2025
8.2.0-rc3 162 10/12/2025
8.2.0-rc10 227 10/13/2025
8.2.0-rc1 144 10/11/2025
8.0.10-rc1 146 10/11/2025
5.0.1-preview.0.1 145 10/8/2025