The MongoDB ADO.NET Data Provider enables user to easily connect to MongoDB data from .NET applications. Rapidly create and deploy powerful .NET applications that integrate with MongoDB document databases.
MongoDB .NET Connectivity Features
- Unmatched performance for reading large datasets
- Compatible with MongoDB 2.6 and above
- Enables SQL-92 capabilities on MongoDB NoSQL data.
- Flexible NoSQL flattening - automatic schema generation, flexible querying etc.
- Connect to live MongoDB data, for real-time data access with the MongoDB JDBC Driver
- Full support for data aggregation and complex JOINs in SQL queries
- Seamless integration with leading BI, reporting, and ETL tools and with custom applications via the MongoDB Connector.
Target Service, API
The MongoDB ADO.NET driver models MongoDB instances as relational databases and supports MongoDB versions 2.6 through 7.0. We support not only MonogoDB hosted version, and DBaaS versions such as Atlas, CosmosDB with MongoDB API, and Amazon DocumentDEB Cluster. The driver leverages the MongoDB API, including the MongoDB aggregation framework, to enable bidirectional SQL access to MongoDB data.
Schema, Data Model
MongoDB is a schemaless, document database that provides high performance, availability, and scalability. The driver models the schemaless MongoDB objects into relational tables and translates SQL queries into MongoDB queries to get the requested data. The Automatic Schema Discovery scheme automatically finds the data types in a MongoDB object by scanning a configured number of rows of the object. You can use RowScanDepth, FlattenArrays, and FlattenObjects to control the relational representation of the collections in MongoDB. You can also write Free-Form Queries not tied to the schema.
Key Objects
User defined objects are exposed as relational tables.
Operations
You can use SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, DROP TABLE, CACHE and many other SQL statements.
Authentication
The driver supports Authenticdation Schemes;, MONGODB-CR, SCRAM-SHA-1, SCRAM-SHA-256, PLAIN (LDAP), GSSAPI, and X509.
See what you can do with MongoDB ADO.NET provider
Use MongoDB from SQL Server Analysis Service (SSAS) multi-dimensional cubes. Keep your analytical data modeling and access to any source including cloud and on-premises.
The MongoDB ADO.NET Provider allows developers to build applications that connect to MongoDB using familiar SQL and Entity Framework. Integrate MongoDB to your mission -critical applications or create easy side-by-side applications.
You can connect from ADO.NET compliant low-code development tools:
You can connect MongoDB from .NET-based reporting and analytics tools:
Standard ADO.NET Access to MongoDB
The MongoDB ADO.NET Provider offers the most natural way to access MongoDB data from any .NET application. Simply use MongoDB Data Provider objects to connect and access data just as you would access any traditional database. You will be able to use the MongoDB Data Provider through Visual Studio Server Explorer, in code through familiar classes, and in data controls like DataGridView, GridView, DataSet, etc.
The CData ADO.NET Provider for MongoDB hides the complexity of accessing data and provides additional powerful security features, smart caching, batching, socket management, and more.
Working with DataAdapters, DataSets, DataTables, etc.
The MongoDB Data Provider has the same ADO.NET architecture as the native .NET data providers for SQL Server and OLEDB, including: MongoDBConnection, MongoDBCommand, MongoDBDataAdapter, MongoDBDataReader, MongoDBDataSource, MongoDBParameter, etc. Because of this you can now access MongoDB data in an easy, familiar way.
For example:
using (MongoDBConnection conn = new MongoDBConnection("...")) {
string select = "SELECT * FROM DocumentDB";
MongoDBCommand cmd = new MongoDBCommand(select, conn);
MongoDBDataAdapter adapter = new MongoDBDataAdapter(cmd);
using (adapter) {
DataTable table = new DataTable();
adapter.Fill(table);
...
}
}
More Than Read-Only: Full Update/CRUD Support
MongoDB Data Provider goes beyond read-only functionality to deliver full support for Create, Read, Update, and Delete operations (CRUD). Your end-users can interact with the data presented by the MongoDB Data Provider as easily as interacting with a database table.
using (MongoDBConnection connection = new MongoDBConnection(connectionString)) {
MongoDBDataAdapter dataAdapter = new MongoDBDataAdapter(
"SELECT Id, Where FROM DocumentDB", connection);
dataAdapter.UpdateCommand = new MongoDBCommand(
"UPDATE DocumentDB SET Where = @Where " +
"WHERE Id = @ID", connection);
dataAdapter.UpdateCommand.Parameters.AddWithValue("@Where", "Where");
dataAdapter.UpdateCommand.Parameters.AddWithValue("@Id", "80000173-1387137645");
DataTable DocumentDBTable = new DataTable();
dataAdapter.Fill(DocumentDBTable);
DataRow firstrow = DocumentDBTable.Rows[0];
firstrow["Where"] = "New Location";
dataAdapter.Update(DocumentDBTable);
}
ADO.NET Provider Performance
With traditional approaches to remote access, performance bottlenecks can spell disaster for applications. Regardless if an application is created for internal use, a commercial project, web, or mobile application, slow performance can rapidly lead to project failure. Accessing data from any remote source has the potential to create these problems. Common issues include:
- Network Connections - Slow network connections and latency issues are common in mobile applications.
- Service Delays - Delays due to service interruptions, resulting in server hardware or software updates.
- Large Data - Intentional or unintentional requests for large amounts of data.
- Disconnects - Complete loss of network connectivity.
The CData ADO.NET Provider for MongoDB solves many of these issues with support for replication queries that can be used to sync data to local databases, greatly improving the performance and dramatically reduce application bottlenecks.
More information about ADO.NET Provider performance capabilities are available in the included documentation.
Visual Studio Integration & Server Explorer
Working with the new MongoDB ADO.NET Provider is easy. As a fully-managed .NET Data Provider, the MongoDB Data Provider integrates seamlessly with the Visual Studio development environment as well as any .NET application.
As an ADO.NET Data Provider, MongoDB ADO.NET Provider can be used to access and explore MongoDB data directly from the Visual Studio Server Explorer.
It's easy. As a standard ADO.NET adapter, developers can connect the Server Explorer to MongoDB ADO.NET Provider just like connecting to any standard database.
- Add a new Data Connection from the Server Explorer and select the MongoDB Data Source
- Configure the basic connection properties to access your MongoDB account data.
Explore all of the data available! MongoDB ADO.NET Provider makes it easy to access live MongoDB data from Visual Studio.
Developer Integration: Databind to MongoDB
Connecting Web, Desktop, and Mobile .NET applications with MongoDB is just like working with SQL Server. It is even possible to integrate MongoDB ADO.NET Provider into applications without writing code.
Developers are free to access the MongoDB ADO.NET Provider in whatever way they like best. Either visually through the Visual Studio Winforms or Webforms designers, or directly through code.
- Developers can connect the MongoDB Data Source directly to form components by configuring the object's smart
tags.
- Add a new Data Connection from the Server Explorer and select the MongoDB Data Source. Then, select the
feed, view, or services you would like to connect the object to.
Done! It's just like connecting to SQL Server.
Popular ADO Videos:
