Skip to main content
All docs
V23.2

MongoDBQuery Class

Contains methods and properties that allow you to create a query to a MongoDB database collection.

Namespace: DevExpress.DataAccess.MongoDB

Assembly: DevExpress.DataAccess.v23.2.dll

NuGet Packages: DevExpress.DataAccess, DevExpress.Win.PivotGrid, DevExpress.Win.TreeMap

Declaration

public class MongoDBQuery :
    IQuery

The following members return MongoDBQuery objects:

Library Related API Members
Cross-Platform Class Library MongoDBQueryCollection.Item[Int32]
MongoDBQueryCollection.Item[String]
WinForms Controls MongoDBQueryViewModel.GetQuery()
MongoDBQueryViewModel.Query

Remarks

A MongoDB data source requires you to configure queries to a database collection of a MongoDB instance. To create a query, initialize a MongoDBQuery object and assign the name of a database and the name of a database collection to the object’s DatabaseName and CollectionName properties. Use the object’s FilterString property to specify a filter condition for items of database collections. Add the created query to the Queries collection of the MongoDBDataSource object.

The names of all queries within the Queries collection should be unique. A string stored in a query’s CollectionName property is the default name for this query. To create several queries to the same MongoDB database collection, use the queries’ Alias property to specify different names for these queries.

Example

The example below demonstrates how to use the MongoDBDataSource class to bind an application or component to a MongoDB instance. The example uses the MongoDBCustomConnectionParameters class to specify a connection string to the MongoDB instance and the MongoDBQuery class to specify data queries to the Categories and Products collections of the Northwind database.

using DevExpress.DataAccess.ConnectionParameters;
using DevExpress.DataAccess.MongoDB;
// ...
// Create a MongoDBCustomConnectionParameters object and assign
// a MongoDB connection string to the object's ConnectionString
// property.
var connectionParameters = new MongoDBCustomConnectionParameters() {
    ConnectionString = "mongodb://localhost:27017"
};

// Specify queries to database collections.
var queryParamLowPrice = new QueryParameter() {
    Name = "LowPrice",
    Type = typeof(int),
    Value = 10
};

var queryLowPriceProducts = new MongoDBQuery() {
    DatabaseName = "Northwind",
    CollectionName = "Products",
    Alias = "LowPriceProducts",
    FilterString = "[UnitPrice] <= ?LowPrice",
    Parameters = { queryParamLowPrice }
};

var queryParamHighPrice = new QueryParameter() {
    Name = "HighPrice",
    Type = typeof(int),
    Value = 40
};

var queryHighPriceProducts = new MongoDBQuery() {
    DatabaseName = "Northwind",
    CollectionName = "Products",
    Alias = "HighPriceProducts",
    FilterString = "[UnitPrice] >= ?HighPrice",
    Parameters = { queryParamHighPrice }
};

// Create a MongoDBDataSource object. Assign the created connection
// string to the object's ConnectionParameters property. Add the
// queries to the object's Queries collection.
var mongoDBDataSource = new MongoDBDataSource() {
    ConnectionParameters = connectionParameters,
    Queries = { queryLowPriceProducts, queryHighPriceProducts }
};

// Call the Fill method of the MongoDBDataSource object to execute the
// queries and load data from the MongoDB instance.
mongoDBDataSource.Fill();

// Use the created object as a data source in your application or component.
//...

Inheritance

Object
MongoDBQuery
See Also