ArcDb.Client
0.10.0
dotnet add package ArcDb.Client --version 0.10.0
NuGet\Install-Package ArcDb.Client -Version 0.10.0
<PackageReference Include="ArcDb.Client" Version="0.10.0" />
<PackageVersion Include="ArcDb.Client" Version="0.10.0" />
<PackageReference Include="ArcDb.Client" />
paket add ArcDb.Client --version 0.10.0
#r "nuget: ArcDb.Client, 0.10.0"
#:package ArcDb.Client@0.10.0
#addin nuget:?package=ArcDb.Client&version=0.10.0
#tool nuget:?package=ArcDb.Client&version=0.10.0
ArcDB Client
A client for interacting with Arc (ArcDB) instances.
Getting Started
To use the Arc client, first install the package via NuGet:
dotnet add package ArcDb.Client
The client can be configured either via dependency injection or direct instantiation, depending on your application.
Using Dependency Injection
If your application uses dependency injection, register the client using the AddArcClient extension method:
services.AddArcClient( options =>
{
options.Url = "https://your-arcdb-instance";
options.Token = "your-access-token";
} );
You can then inject IArcClient wherever it’s needed:
public class MyService
{
public MyService( IArcClient arcClient )
{
}
}
Dependency injection support is optional and provided as a convenience.
Direct Instantiation
If you’re not using dependency injection (for example, in a console app or script), you can create the client directly:
var options = new ArcClientOptions
{
Url = "https://your-arcdb-instance",
Token = "your-access-token"
};
using IArcClient client = new ArcClient( options );
ArcClient is safe to reuse and is intended to be long-lived (singleton).
When dependency injection creates the client, the service provider owns and
disposes it; consumers should not dispose an injected client themselves.
Importing Documents
ImportAsync is the high-volume creation API. It batches an asynchronous
sequence and retries uncertain batches with the same generated import ID and
sequence. Every document must have a stable, non-empty ID; the client rejects a
missing ID before transmitting the affected batch.
var result = await client.Collection( "events" ).Documents.ImportAsync(
ReadEventsAsync(),
new ImportOptions
{
ImportId = existingImportId, // optional
BatchSize = 500,
Retry = new ImportRetryOptions
{
MaximumAttempts = 8,
InitialDelay = TimeSpan.FromMilliseconds( 250 ),
MaximumDelay = TimeSpan.FromSeconds( 10 )
}
},
progress,
cancellationToken
);
Each acknowledged batch has committed independently. Validation and conflict failures are not retried.
| Product | Versions 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. |
-
net10.0
- Google.Protobuf (>= 3.36.1)
- Grpc.Net.Client (>= 2.83.0)
- Microsoft.Extensions.Options (>= 10.0.11)
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 |
|---|---|---|
| 0.10.0 | 169 | 9/7/2026 |
| 0.9.1 | 120 | 9/1/2026 |
| 0.9.0 | 87 | 9/1/2026 |
| 0.8.0 | 98 | 8/31/2026 |
| 0.7.1 | 101 | 8/28/2026 |
| 0.7.0 | 115 | 8/14/2026 |
| 0.6.1 | 99 | 8/13/2026 |
| 0.6.0 | 116 | 8/13/2026 |
| 0.5.0 | 100 | 8/12/2026 |
| 0.4.1 | 98 | 8/12/2026 |
| 0.4.0 | 100 | 8/12/2026 |
| 0.3.0 | 108 | 8/11/2026 |
| 0.1.1 | 112 | 5/8/2026 |
| 0.1.0 | 171 | 1/16/2026 |