Dependency injection extensions for IceRPC
$ dotnet add package IceRpc.Extensions.DependencyInjectionIceRpc.Extensions.DependencyInjection helps you build applications with IceRPC and Microsoft's DI container.
Source code | Package | Example | API reference | Product documentation
// Client application
using IceRpc;
using IceRpc.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
var hostBuilder = Host.CreateDefaultBuilder(args);
hostBuilder.ConfigureServices(services =>
services
.AddIceRpcClientConnection(new Uri("icerpc://localhost"))
// Builds an invocation pipeline singleton.
.AddIceRpcInvoker(builder =>
builder
.UseDeadline(TimeSpan.FromSeconds(20))
.UseLogger()
.Into<ClientConnection>()));
using var host = hostBuilder.Build();
host.Run();
// Server application
using IceRpc;
using IceRpc.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
var hostBuilder = Host.CreateDefaultBuilder(args);
hostBuilder.ConfigureServices(services =>
services
// Add a server and configure its dispatch pipeline.
.AddIceRpcServer(builder =>
builder
.UseDeadline()
.UseLogger()
.Map<...>()));
using var host = hostBuilder.Build();
host.Run();