Namespace MongoDB.Driver
The MongoDB.Driver namespace contains all the basic types and classes that compose the MongoDB driver. It contains the classes needed for most interactions with the database.
Classes
- AggregateBucketAutoOptions
Represents options for the BucketAuto method.
- AggregateBucketAutoResultIdSerializer
Static factory class for AggregateBucketAutoResultIdSerializer.
- AggregateBucketAutoResultIdSerializer<TValue>
A serializer for AggregateBucketAutoResultId.
- AggregateBucketAutoResultId<TValue>
Represents the _id value in the result of a $bucketAuto stage.
- AggregateBucketAutoResult<TValue>
Represents the result of the $bucketAuto stage.
- AggregateBucketOptions<TValue>
Represents options for the Bucket method.
- AggregateBucketResult<TValue>
Represents the result of the $bucket stage.
- AggregateCountResult
Result type for the aggregate $count stage.
- AggregateExpressionDefinition<TSource, TResult>
An aggregation expression.
- AggregateFacet
Represents static methods for creating facets.
- AggregateFacetOptions<TOutput>
Options for the aggregate $facet stage.
- AggregateFacetResult
Represents an abstract AggregateFacetResult with an arbitrary TOutput type.
- AggregateFacetResult<TOutput>
Represents the result of a single facet.
- AggregateFacetResults
Represents the results of a $facet stage with an arbitrary number of facets.
- AggregateFacet<TInput>
Represents a facet to be passed to the Facet method.
- AggregateFacet<TInput, TOutput>
Represents a facet to be passed to the Facet method.
- AggregateFluentBase<TResult>
Base class for implementors of IAggregateFluent<TResult>.
- AggregateGraphLookupOptions<TFrom, TAsElement, TOutput>
Represents options for the GraphLookup method.
- AggregateLookupOptions<TForeignDocument, TResult>
Options for the aggregate $lookup stage.
- AggregateOptions
Options for an aggregate operation.
- AggregateSortByCountResult<TId>
Result type for the aggregate $sortByCount stage.
- AggregateUnwindOptions<TResult>
Options for the $unwind aggregation stage.
- AppendedStagePipelineDefinition<TInput, TIntermediate, TOutput>
Represents a pipeline consisting of an existing pipeline with one additional stage appended.
- ArrayFilterDefinition
Base class for array filters.
- ArrayFilterDefinition<TItem>
Base class for array filters.
- BatchTransformingAsyncCursor<TFromDocument, TToDocument>
Represents a cursor that wraps another cursor with a transformation function on the documents.
- BsonDocumentArrayFilterDefinition<TItem>
A BsonDocument based array filter.
- BsonDocumentCommand<TResult>
A BsonDocument based command.
- BsonDocumentFilterDefinition<TDocument>
A BsonDocument based filter.
- BsonDocumentIndexKeysDefinition<TDocument>
A BsonDocument based index keys definition.
- BsonDocumentPipelineStageDefinition<TInput, TOutput>
A BsonDocument based stage.
- BsonDocumentProjectionDefinition<TSource>
A BsonDocument based projection whose projection type is not yet known.
- BsonDocumentProjectionDefinition<TSource, TProjection>
A BsonDocument based projection.
- BsonDocumentSortDefinition<TDocument>
A BsonDocument based sort.
- BsonDocumentStagePipelineDefinition<TInput, TOutput>
A pipeline composed of instances of BsonDocument.
- BsonDocumentUpdateDefinition<TDocument>
A BsonDocument based update.
- BsonValueAggregateExpressionDefinition<TSource, TResult>
A BsonValue based aggregate expression.
- Builders<TDocument>
A static helper class containing various builders.
- BulkWriteError
Represents the details of a write error for a particular request.
- BulkWriteOptions
Options for a bulk write operation.
- BulkWriteResult
Represents the result of a bulk write operation.
- BulkWriteResult<TDocument>
Represents the result of a bulk write operation.
- BulkWriteResult<TDocument>.Acknowledged
Result from an acknowledged write concern.
- BulkWriteResult<TDocument>.Unacknowledged
Result from an unacknowledged write concern.
- BulkWriteUpsert
Represents the information about one Upsert.
- ChangeStreamDocumentSerializer<TDocument>
A serializer for ChangeStreamDocument instances.
- ChangeStreamDocument<TDocument>
An output document from a $changeStream pipeline stage.
- ChangeStreamOperationTypeSerializer
A serializer for ChangeStreamOperationType values.
- ChangeStreamOptions
Options for a change stream operation.
- ChangeStreamPreAndPostImagesOptions
Change stream pre and post images options.
- ChangeStreamSplitEvent
Change stream splitEvent data.
- ChangeStreamStageOptions
Options for a $changeStream stage.
- ChangeStreamUpdateDescription
An UpdateDescription in a ChangeStreamDocument instance.
- ChangeStreamUpdateDescriptionSerializer
A serialize for ChangeStreamUpdateDescription values.
- ClientSessionOptions
Client session options.
- ClientSideDeserializationProjectionDefinition<TSource, TProjection>
A client side only projection that is implemented solely by deserializing using a different serializer.
- ClusterRegistry
Represents a registry of already created clusters.
- ClusteredIndexOptions<TDocument>
Options for creating a clustered index.
- Collation
Represents a MongoDB collation.
- CollectionNamespace
Represents a collection namespace.
- Command<TResult>
Base class for commands.
- ConstantSetFieldDefinition<TDocument, TField>
A SetFieldDefinition that uses a field and a a constant to define the field to be set.
- CountOptions
Options for a count operation.
- CreateCollectionOptions
Options for creating a collection.
- CreateCollectionOptions<TDocument>
Options for creating a collection.
- CreateIndexCommitQuorum
Represents a create index commit quorum.
- CreateIndexCommitQuorumWithMode
Represents a CreateIndexCommitQuorum with a mode value.
- CreateIndexCommitQuorumWithW
Represents a CreateIndexCommitQuorum with a w value.
- CreateIndexModel<TDocument>
Model for creating an index.
- CreateIndexOptions
Options for creating an index.
- CreateIndexOptions<TDocument>
Options for creating an index.
- CreateManyIndexesOptions
Options for creating multiple indexes.
- CreateOneIndexOptions
Options for creating a single index.
- CreateSearchIndexModel
Model for creating a search index.
- CreateViewOptions<TDocument>
Options for creating a view.
- DatabaseNamespace
Represents a database namespace.
- DeferredAsyncCursor<TDocument>
Represents a cursor for an operation that is not actually executed until MoveNextAsync is called for the first time.
- DeleteManyModel<TDocument>
Model for deleting many documents.
- DeleteOneModel<TDocument>
Model for deleting a single document.
- DeleteOptions
Options for the Delete methods.
- DeleteResult
The result of a delete operation.
- DeleteResult.Acknowledged
The result of an acknowledged delete operation.
- DeleteResult.Unacknowledged
The result of an unacknowledged delete operation.
- DensifyBounds
Represents keyword densify bounds.
- DensifyDateTimeBounds
Represents a DateTime densify bounds.
- DensifyDateTimeRange
Represents a DateTime densify range.
- DensifyKeywordDateTimeBounds
Represents a keyword DateTime densify bounds.
- DensifyKeywordNumericBounds<TNumber>
Represents a keyword numeric densify bounds.
- DensifyLowerUpperDateTimeBounds
Represents a DateTime densify bounds with lower and upper bounds.
- DensifyLowerUpperNumericBounds<TNumber>
Represents a numeric densify bounds with lower and upper bounds.
- DensifyNumericBounds<TNumber>
Represents a numeric densify bounds.
- DensifyNumericRange<TNumber>
Represents a numeric densify range.
- DensifyRange
Represents a range for the $densify stage.
- DistinctOptions
Options for the distinct command.
- DocumentsAggregateExpressionDefinition<TDocument>
An aggregate expression for the $documents stage.
- DocumentsWindow
Represents a documents window for a SetWindowFields window method.
- DocumentsWindowBoundary
Represents a boundary for a documents window in SetWindowFields.
- DropCollectionOptions
Options for dropping a collection.
- DropIndexOptions
Options for dropping an index.
- EmptyPipelineDefinition<TInput>
Represents an empty pipeline.
- EstimatedDocumentCountOptions
Options for estimated document count.
- ExpressionAggregateExpressionDefinition<TSource, TResult>
A BsonValue based aggregate expression.
- ExpressionFieldDefinition<TDocument>
An Expression based field.
- ExpressionFieldDefinition<TDocument, TField>
An Expression based field.
- ExpressionFilterDefinition<TDocument>
An Expression based filter.
- ExpressionSetFieldDefinitions<TDocument, TFields>
A subclass of SetFieldDefinition that uses an Expression to define the fields to be set.
- ExpressionTranslationOptions
Options for controlling translation from .NET expression trees into MongoDB expressions.
- ExternalEvidence
Evidence of a MongoIdentity via an external mechanism. For example, on windows this may be the current process' user or, on linux, via kinit.
- FieldDefinition<TDocument>
Base class for field names.
- FieldDefinition<TDocument, TField>
Base class for field names.
- FilterDefinitionBuilder<TDocument>
A builder for a FilterDefinition<TDocument>.
- FilterDefinition<TDocument>
Base class for filters.
- FindExpressionProjectionDefinition<TSource, TProjection>
A find Expression based projection.
- FindFluentBase<TDocument, TProjection>
Base class for implementors of IFindFluent<TDocument, TProjection>.
- FindOneAndDeleteOptions<TDocument>
Options for a findAndModify command to delete an object.
- FindOneAndDeleteOptions<TDocument, TProjection>
Options for a findAndModify command to delete an object.
- FindOneAndReplaceOptions<TDocument>
Options for a findAndModify command to replace an object.
- FindOneAndReplaceOptions<TDocument, TProjection>
Options for a findAndModify command to replace an object.
- FindOneAndUpdateOptions<TDocument>
Options for a findAndModify command to update an object.
- FindOneAndUpdateOptions<TDocument, TProjection>
Options for a findAndModify command to update an object.
- FindOptions
Options for finding documents.
- FindOptionsBase
Options for a find operation.
- FindOptions<TDocument>
Options for finding documents.
- FindOptions<TDocument, TProjection>
Options for finding documents.
- IAggregateFluentExtensions
Extension methods for IAggregateFluent<TResult>
- IAsyncCursorExtensions
Represents extension methods for IAsyncCursor.
- IAsyncCursorSourceExtensions
Represents extension methods for IAsyncCursorSource.
- IFindFluentExtensions
Extension methods for IFindFluent<TDocument, TProjection>
- IMongoClientExtensions
Extension methods on IMongoClient.
- IMongoCollectionExtensions
Extension methods for IMongoCollection<TDocument>.
- IMongoDatabaseExtensions
Extension methods on IMongoDatabase.
- ISetWindowFieldsPartition<TInput>
Represents a partition for SetWindowFields.
- IndexKeysDefinitionBuilder<TDocument>
A builder for an IndexKeysDefinition<TDocument>.
- IndexKeysDefinitionExtensions
Extension methods for an index keys definition.
- IndexKeysDefinition<TDocument>
Base class for an index keys definition.
- IndexOptionDefaults
Represents index option defaults.
- InsertManyOptions
Options for inserting many documents.
- InsertOneModel<TDocument>
Model for inserting a single document.
- InsertOneOptions
Options for inserting one document.
- JsonArrayFilterDefinition<TItem>
A JSON string based array filter.
- JsonCommand<TResult>
A JSON string based command.
- JsonFilterDefinition<TDocument>
A JSON string based filter.
- JsonIndexKeysDefinition<TDocument>
A JSON string based index keys definition.
- JsonPipelineStageDefinition<TInput, TOutput>
A JSON string based pipeline stage.
- JsonProjectionDefinition<TSource>
A JSON string based projection whose projection type is not yet known.
- JsonProjectionDefinition<TSource, TProjection>
A JSON string based projection.
- JsonSortDefinition<TDocument>
A JSON string based sort.
- JsonUpdateDefinition<TDocument>
A JSON string based update.
- KeywordDocumentsWindowBoundary
Represents a keyword boundary for a document window in SetWindowFields (i.e. "unbounded" or "current").
- KeywordRangeWindowBoundary
Represents a keyword boundary for a range window in SetWindowFields (i.e. "unbounded" or "current").
- ListCollectionNamesOptions
Options for a list collection names operation.
- ListCollectionsOptions
Options for a list collections operation.
- ListDatabaseNamesOptions
Options for a list database names operation.
- ListDatabasesOptions
Options for a list databases operation.
- ListIndexesOptions
Options for a list indexes operation.
- ListSetFieldDefinitionsExtensions
Extension methods to add additional set field definitions to an existing instance of ListSetFieldDefinitions.
- ListSetFieldDefinitions<TDocument>
A subclass of SetFieldDefinitions containing a list of SetFieldDefinition instances to define the fields to be set.
- MapReduceOptions<TDocument, TResult>
Represents the options for a map-reduce operation.
- MapReduceOutputOptions
Represents the output options for a map-reduce operation.
- MergeStageOptions<TOutput>
Options for the $merge aggregation pipeline stage.
- MongoAuthenticationException
Represents a MongoDB authentication exception.
- MongoBulkWriteException
Represents a bulk write exception.
- MongoBulkWriteException<TDocument>
Represents a bulk write exception.
- MongoClient
Base class for implementors of IMongoClient.
- MongoClientBase
Base class for implementors of IMongoClient.
- MongoClientException
Represents a MongoDB client exception.
- MongoClientSettings
The settings for a MongoDB client.
- MongoCollectionBase<TDocument>
Base class for implementors of IMongoCollection<TDocument>.
- MongoCollectionSettings
The settings used to access a collection.
- MongoCommandException
Represents a MongoDB command exception.
- MongoConfigurationException
Represents a MongoDB configuration exception.
- MongoConnectionClosedException
Represents a MongoDB connection failed exception.
- MongoConnectionException
Represents a MongoDB connection exception.
- MongoConnectionPoolPausedException
Represents a MongoDB connection pool paused exception.
- MongoCredential
Credential to access a MongoDB database.
- MongoCursorNotFoundException
Represents a MongoDB cursor not found exception.
- MongoDBRef
Represents a DBRef (a convenient way to refer to a document).
- MongoDBRefSerializer
Represents a serializer for MongoDBRefs.
- MongoDatabaseBase
Base class for implementors of IMongoDatabase.
- MongoDatabaseSettings
The settings used to access a database.
- MongoDefaults
Default values for various Mongo settings.
- MongoDuplicateKeyException
Represents a MongoDB duplicate key exception.
- MongoException
Represents a MongoDB exception.
- MongoExecutionTimeoutException
Represents a MongoDB execution timeout exception.
- MongoExternalAwsIdentity
Represents an identity defined by AWS external credentials.
- MongoExternalIdentity
Represents an identity defined outside of mongodb.
- MongoIdentity
Represents an identity in MongoDB.
- MongoIdentityEvidence
Evidence used as proof of a MongoIdentity.
- MongoIncompatibleDriverException
Represents a MongoDB incompatible driver exception.
- MongoIndexManagerBase<TDocument>
Base class for implementors of IMongoIndexManager<TDocument>.
- MongoInternalException
Represents a MongoDB internal exception (almost surely the result of a bug).
- MongoInternalIdentity
Represents an identity defined inside mongodb.
- MongoNodeIsRecoveringException
Represents a MongoDB node is recovering exception.
- MongoNotPrimaryException
Represents a MongoDB not primary exception.
- MongoOidcIdentity
Represents an OIDC identity.
- MongoQueryException
Represents a MongoDB query exception.
- MongoServerAddress
The address of a MongoDB server.
- MongoServerException
Represents a MongoDB server exception.
- MongoUrl
Represents an immutable URL style connection string. See also MongoUrlBuilder.
- MongoUrlBuilder
Represents URL-style connection strings.
- MongoUrlTypeConverter
Implements a TypeConverter for converting MongoUrl.
- MongoUtils
Various static utility methods.
- MongoWaitQueueFullException
Represents a MongoDB connection pool wait queue full exception.
- MongoWriteConcernException
Represents a MongoDB write concern exception.
- MongoWriteException
Represents a write exception.
- MongoX509Identity
Represents an identity defined by an X509 certificate.
- Mql
Contains methods that can be used to access MongoDB specific functionality in LINQ queries.
- NoPipelineInput
Represents the void input data type to a pipeline with no input, such as a database aggregation. No actual instances of this type can be created.
- ObjectCommand<TResult>
An Object based command.
- ObjectFilterDefinition<TDocument>
An Object based filter.
- ObjectProjectionDefinition<TSource>
An Object based projection whose projection type is not yet known.
- ObjectProjectionDefinition<TSource, TProjection>
An Object based projection.
- ObjectSortDefinition<TDocument>
An Object based sort.
- ObjectUpdateDefinition<TDocument>
An Object based update.
- Optional
Represents helper methods for use with the Optional<T> struct.
- PasswordEvidence
Evidence of a MongoIdentity via a shared secret.
- PipelineDefinitionBuilder
Extension methods for adding stages to a pipeline.
- PipelineDefinition<TInput, TOutput>
Base class for a pipeline.
- PipelineStageDefinitionBuilder
Methods for building pipeline stages.
- PipelineStageDefinition<TInput, TOutput>
Base class for pipeline stages.
- PipelineStagePipelineDefinition<TInput, TOutput>
A pipeline composed of instances of IPipelineStageDefinition.
- PipelineUpdateDefinition<TDocument>
A PipelineDefinition<TInput, TOutput> based update definition.
- PositionDocumentsWindowBoundary
Represents a position boundary for a document window in SetWindowFields.
- PrependedStagePipelineDefinition<TInput, TIntermediate, TOutput>
Represents a pipeline consisting of an existing pipeline with one additional stage prepended.
- ProjectionDefinitionBuilder<TSource>
A builder for a projection.
- ProjectionDefinitionExtensions
Extension methods for projections.
- ProjectionDefinition<TSource>
Base class for projections whose projection type is not yet known.
- ProjectionDefinition<TSource, TProjection>
Base class for projections.
- QueryVector
Vector search query vector.
- RangeWindow
Represents a range window for a SetWindowFields window method.
- RangeWindowBoundary
Represents a boundary for a range window in SetWindowFields.
- ReadConcern
Represents a read concern.
- ReadPreference
Represents a read preference.
- ReadPreferenceHedge
Represents a read preference hedge.
- RenameCollectionOptions
Options for renaming a collection.
- RenderedCommand<TResult>
A rendered command.
- RenderedFieldDefinition
A rendered field.
- RenderedFieldDefinition<TField>
A rendered field.
- RenderedPipelineDefinition<TOutput>
A rendered pipeline.
- RenderedPipelineStageDefinition<TOutput>
A rendered pipeline stage.
- RenderedProjectionDefinition<TProjection>
A rendered projection.
- ReplaceOneModel<TDocument>
Model for replacing a single document.
- ReplaceOneResult
The result of an update operation.
- ReplaceOneResult.Acknowledged
The result of an acknowledged update operation.
- ReplaceOneResult.Unacknowledged
The result of an unacknowledged update operation.
- ReplaceOptions
Options for replacing a single document.
- ReplaceOutputSerializerPipelineDefinition<TInput, TIntermediate, TOutput>
Represents a pipeline with the output serializer replaced.
- ServerApi
Represents a server API.
- ServerApiVersion
Represents a server API version.
- SetFieldDefinition<TDocument>
A definition of a single field to be set.
- SetFieldDefinitionsBuilder<TDocument>
A builder for SetFieldDefinitions.
- SetFieldDefinitions<TDocument>
Defines the fields to be set by a $set stage.
- SetWindowFieldsWindow
Represents a window for a SetWindowFields window method.
- SortDefinitionBuilder<TDocument>
A builder for a SortDefinition<TDocument>.
- SortDefinitionExtensions
Extension methods for SortDefinition.
- SortDefinition<TDocument>
Base class for sorts.
- SslSettings
Represents the settings for using SSL.
- StringFieldDefinition<TDocument>
A string based field name.
- StringFieldDefinition<TDocument, TField>
A string based field name.
- StringOrRegularExpression
Represents a value that is either a string or a BsonRegularExpression.
- Tag
Represents a replica set member tag.
- TagSet
Represents a replica set member tag set.
- TextSearchOptions
Represents text search options.
- TimeRangeWindowBoundary
Represents a time boundary for a range window in SetWindowFields.
- TimeSeriesOptions
Defines the time series options to use when creating a time series collection. See https://www.mongodb.com/docs/manual/reference/command/create/ for supported options and https://www.mongodb.com/docs/manual/core/timeseries-collections/ for more information on time series collections.
- TransactionOptions
Transaction options.
- UpdateDefinitionBuilder<TDocument>
A builder for an UpdateDefinition<TDocument>.
- UpdateDefinitionExtensions
Extension methods for UpdateDefinition.
- UpdateDefinition<TDocument>
Base class for updates.
- UpdateManyModel<TDocument>
Model for updating many documents.
- UpdateOneModel<TDocument>
Model for updating a single document.
- UpdateOptions
Options for updating a single document.
- UpdateResult
The result of an update operation.
- UpdateResult.Acknowledged
The result of an acknowledged update operation.
- UpdateResult.Unacknowledged
The result of an acknowledged update operation.
- ValueRangeWindowBoundary
Represents a value boundary for a document window in SetWindowFields.
- ValueRangeWindowBoundary<TValue>
Represents a value boundary for a range window in SetWindowFields.
- VectorSearchOptions<TDocument>
Vector search options.
- WriteConcern
Represents a write concern.
- WriteConcern.WCount
Represents a numeric WValue.
- WriteConcern.WMode
Represents a mode string WValue.
- WriteConcern.WValue
Represents the base class for w values.
- WriteConcernError
Represents the details of a write concern error.
- WriteConcernResult
Represents the results of an operation performed with an acknowledged WriteConcern.
- WriteError
Represents the details of a write error.
- WriteModel<TDocument>
Base class for a write model.
Structs
- AggregateBucketAutoGranularity
Represents the granularity value for a $bucketAuto stage.
- Optional<T>
Represents an optional parameter that might or might not have a value.
- Setting<T>
Represents a setting that may or may not have been set.
Interfaces
- IAggregateFluent<TResult>
Fluent interface for aggregate.
- IAsyncCursorSource<TDocument>
Represents an operation that will return a cursor when executed.
- IAsyncCursor<TDocument>
Represents an asynchronous cursor.
- IChangeStreamCursor<TDocument>
Represents an asynchronous cursor for change stream.
- IClientSession
The interface for a client session.
- IClientSessionHandle
A handle to an underlying reference counted IClientSession.
- ICoreServerSession
The interface for a core server session.
- IFilteredMongoCollection<TDocument>
A filtered mongo collection. The filter will be and'ed with all filters.
- IFindFluent<TDocument, TProjection>
Fluent interface for find.
- IMongoClient
The client interface to MongoDB.
- IMongoCollection<TDocument>
Represents a typed collection in MongoDB.
- IMongoDatabase
Represents a database in MongoDB.
- IMongoIndexManager<TDocument>
An interface representing methods used to create, delete and modify indexes.
- IOrderedAggregateFluent<TResult>
Fluent interface for aggregate.
- IOrderedFindFluent<TDocument, TProjection>
Fluent interface for find.
- IPipelineStageDefinition
A pipeline stage.
- IRenderedPipelineStageDefinition
A rendered pipeline stage.
- IServerSession
The interface for a server session.
Enums
- AggregateStringTranslationMode
Option for which expression to generate for certain string operations.
- ChangeStreamFullDocumentBeforeChangeOption
Change stream FullDocumentBeforeChange option.
- ChangeStreamFullDocumentOption
Change stream FullDocument option.
- ChangeStreamOperationType
The operation type of a change stream result.
- CollationAlternate
Controls whether spaces and punctuation are considered base characters.
- CollationCaseFirst
Uppercase or lowercase first.
- CollationMaxVariable
Controls which characters are affected by alternate: "Shifted".
- CollationStrength
Prioritizes the comparison properties.
- ConnectionMode
Server connection mode.
- CursorType
The cursor type.
- DensifyDateTimeUnit
Represents a densify DateTime unit.
- DocumentValidationAction
Represents the document validation action.
- DocumentValidationLevel
Represents the document validation level.
- MergeStageWhenMatched
The behavior of $merge is a result document and an existing document in the collection have the same value for the specified on field(s).
- MergeStageWhenNotMatched
The behavior of $merge if a result document does not match an existing document in the output collection.
- ReadConcernLevel
The leve of the read concern.
- ReadPreferenceMode
Represents the read preference mode.
- ReturnDocument
Which version of the document to return when executing a FindAndModify command.
- ServerErrorCategory
Represents the category for an error from the server.
- SortDirection
The direction of the sort.
- TimeSeriesGranularity
Specifies the granularity of time series collection bucketing.
- UpdateDefinitionCurrentDateType
The type to use for a $currentDate operator.
- WriteModelType
The type of a write model.