Orleans.Lattice.GrainIndex
9.9.0
dotnet add package Orleans.Lattice.GrainIndex --version 9.9.0
NuGet\Install-Package Orleans.Lattice.GrainIndex -Version 9.9.0
<PackageReference Include="Orleans.Lattice.GrainIndex" Version="9.9.0" />
<PackageVersion Include="Orleans.Lattice.GrainIndex" Version="9.9.0" />
<PackageReference Include="Orleans.Lattice.GrainIndex" />
paket add Orleans.Lattice.GrainIndex --version 9.9.0
#r "nuget: Orleans.Lattice.GrainIndex, 9.9.0"
#:package Orleans.Lattice.GrainIndex@9.9.0
#addin nuget:?package=Orleans.Lattice.GrainIndex&version=9.9.0
#tool nuget:?package=Orleans.Lattice.GrainIndex&version=9.9.0
Orleans.Lattice.GrainIndex
Optional, opt-in typed grain indexing for Orleans.Lattice.
An Orleans grain that holds typed state can be enrolled in a grain index: the grain's projected state is written into a lattice tree owned by this package, so the grains matching a property predicate can be discovered without a scan of the cluster's grain directory or a separate secondary store.
Queries reuse the core server-side predicate surface, so filtering happens in the tree shards rather than by pulling every candidate back to the caller.
- Declare an index in silo setup with
AddGrainIndex<TGrain, TState>(...), naming each projected property withInclude, and annotate the grain's persistent state with[Indexed]. - Query it through
IGrainIndexProvider:GetIndex<TGrain, TState>(name)returns an index whoseWhere(...)plans a query that streams matching grain references, keys, or matches. - A durable pending-projection outbox retries a failed index write until it
lands, and a reminder-anchored backfill crawl onboards dormant grains from an
IGrainKeySourceregistered withAddGrainIndexKeySource. - Startup drift detection rejects (or, when opted in, rebuilds) a declaration
change that would invalidate the stored entries, and
IGrainIndexAdminreports status and controls the crawl.
See the grain index documentation.
| 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
- Orleans.Lattice (>= 9.9.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.