ULinkRPC.Server 0.9.0

The owner has unlisted this package. This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package ULinkRPC.Server --version 0.9.0
                    
NuGet\Install-Package ULinkRPC.Server -Version 0.9.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="ULinkRPC.Server" Version="0.9.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ULinkRPC.Server" Version="0.9.0" />
                    
Directory.Packages.props
<PackageReference Include="ULinkRPC.Server" />
                    
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 ULinkRPC.Server --version 0.9.0
                    
#r "nuget: ULinkRPC.Server, 0.9.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.
#:package ULinkRPC.Server@0.9.0
                    
#: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=ULinkRPC.Server&version=0.9.0
                    
Install as a Cake Addin
#tool nuget:?package=ULinkRPC.Server&version=0.9.0
                    
Install as a Cake Tool

ULinkRPC.Server

Server runtime implementation for ULinkRPC.

Install

dotnet add package ULinkRPC.Server

Dependencies

  • ULinkRPC.Core

ULinkRPC.Server has no hard dependency on concrete serializer or transport implementations.

Includes

  • RpcServiceRegistry
  • RpcSession
  • RpcServerHostBuilder
  • RpcServerHost
  • RpcGeneratedServiceBinder

Use RpcServerHostBuilder to compose serializer, transport, generated binders, and security in one place:

var builder = RpcServerHostBuilder.Create()
    .UseCommandLine(args)
    .UseSerializer(new MemoryPackRpcSerializer())
    .UseKeepAlive(TimeSpan.FromSeconds(15), TimeSpan.FromSeconds(45))
    .UseAcceptor(new TcpConnectionAcceptor(20000));

await builder.RunAsync();

When the entry assembly contains code-generated AllServicesBinder, the builder binds it automatically.

Low-Level Usage

Pass ITransport and IRpcSerializer explicitly when you need a manually managed per-connection session:

var session = new RpcSession(transport, serializer);

Optional transport ownership:

await using var session = new RpcSession(transport, serializer, ownsTransport: true);

When ownsTransport is true, disposing the session also disposes the transport.

KeepAlive

RpcServerHostBuilder.UseKeepAlive(...) enables connection-level idle timeout handling for accepted sessions.

  • The server automatically replies to client keepalive pings with pong.
  • When enabled on the host, each RpcSession also tracks idle time and disconnects sessions that remain inactive longer than the configured timeout.

Authentication And Authorization Boundary

ULinkRPC.Server is intentionally focused on RPC session management, transport integration, request dispatch, and connection-level concerns such as framing, keepalive, and transport security.

Request-level authorization is not built into the server runtime by design.

  • Transport security belongs in the RPC layer because it protects the connection itself.
  • Authentication may be integrated at the application boundary, but the concrete identity model is application-specific.
  • Authorization is expected to live in an upper application/business layer because access rules depend on domain concepts such as users, roles, tenants, resources, and policies.

This boundary is intentional: the RPC runtime should carry calls correctly and safely, but it should not hard-code business authorization semantics into the communication layer.

Future evolution may add authentication / authorization extension points, but the core runtime is not intended to become a built-in policy engine.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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

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
Loading failed