C# Examples
C# examples demonstrate connectivity to all three Virtufin services.
Service SDKs
| Package | Registry | Install |
|---|---|---|
Virtufin.WorkManager.Client |
Gitea NuGet | dotnet add package Virtufin.WorkManager.Client |
Virtufin.WebSocketManager.Client |
Gitea NuGet | dotnet add package Virtufin.WebSocketManager.Client |
Virtufin.Api.Client |
Gitea NuGet | dotnet add package Virtufin.Api.Client |
Central Package Management
Versions are managed in dotnet/Directory.Packages.props:
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<PackageVersion Include="Virtufin.WorkManager.Client" Version="1.0.*" />
Key Patterns
// WebSocketManager
using var client = new WebSocketManagerClient(host);
var result = await client.ConnectAsync(new ConnectRequest
{
Url = "wss://stream.binance.com:9443/ws/btcusdt@depth@100ms",
AutoReconnect = true,
CorrelationMode = CorrelationMode.Raw
});
// State store
var httpClient = new HttpClient { BaseAddress = new Uri(apiUrl) };
await httpClient.PostAsync("/v1/state/save-state", new StringContent(
JsonSerializer.Serialize(new { service = "examples", key = "key", value = "value" }),
Encoding.UTF8, "application/json"));