Orleans.Providers.Mongo 9.2.1.1

dotnet add package Orleans.Providers.Mongo --version 9.2.1.1
                    
NuGet\Install-Package Orleans.Providers.Mongo -Version 9.2.1.1
                    
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="Orleans.Providers.Mongo" Version="9.2.1.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Orleans.Providers.Mongo" Version="9.2.1.1" />
                    
Directory.Packages.props
<PackageReference Include="Orleans.Providers.Mongo" />
                    
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 Orleans.Providers.Mongo --version 9.2.1.1
                    
#r "nuget: Orleans.Providers.Mongo, 9.2.1.1"
                    
#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 Orleans.Providers.Mongo@9.2.1.1
                    
#: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=Orleans.Providers.Mongo&version=9.2.1.1
                    
Install as a Cake Addin
#tool nuget:?package=Orleans.Providers.Mongo&version=9.2.1.1
                    
Install as a Cake Tool

Microsoft.Orleans.Providers.Mongo

This project is a fork of OrleansContrib/Orleans.Providers.MongoDB.

Purpose

It provides MongoDB-based storage providers for Microsoft Orleans, enabling the use of MongoDB as a backend for grain state, reminders, and event sourcing in distributed applications built with Orleans.

Key Features

  • Grain Storage Provider: Store and retrieve grain state in MongoDB.
  • Reminder Provider: Persist Orleans reminders in MongoDB.
  • Event Sourcing Support: (if applicable) Store events for grains using MongoDB.
  • Custom Enhancements: This fork may include performance improvements, bug fixes, or additional features tailored for the Mailbiz.One.Journey.Flows solution.

Getting Started

  1. Reference this project in your Orleans solution.
  2. Configure the MongoDB provider in your Orleans silo configuration (see the original OrleansContrib documentation for setup details).
  3. Adjust connection strings and options as needed for your environment.

Differences from Upstream

This fork includes several changes and enhancements compared to the upstream project:

  • Targeted for .NET 9.0: Updated to support the latest .NET and Orleans SDK versions.
  • Custom Client Factory: Implements a flexible IMongoClientFactory and related utilities for improved MongoDB client management and dependency injection.
  • Enhanced Configuration: Extension methods for silo and client builders allow easy configuration of MongoDB providers using connection strings or custom settings.
  • Collection Prefix Support: Adds support for custom collection prefixes for multi-tenancy and environment separation.
  • Serializer Improvements: Custom grain state serializers and options (e.g., JsonGrainStateSerializerOptions) for better compatibility and performance.
  • Performance and Reliability: Includes optimizations, bug fixes, and reliability improvements beyond the upstream version.
  • Mailbiz-Specific Features: Tailored enhancements for Mailbiz.One.Journey.Flows, such as improved error handling, configuration, and integration patterns.

Additional Change:

  • FieldGrainId: The MongoGrainStorageCollection class introduces a new field, FieldGrainId, which stores the grain ID in each document. This provides easier querying and debugging of grain state records, and is not present in the upstream implementation.

For a detailed changelog or specific commit history, review the repository or contact the maintainers.

License

This project inherits the license from the upstream repository. See the LICENSE file for details.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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
9.2.1.1 50 9/22/2025
9.2.1 47 9/22/2025
9.2.1-rc 49 9/22/2025