Bind Card View to Large Data via XPO
- 4 minutes to read
The ASPxCardView control allows you to bind to large data sets with the XpoDataSource component provided by the XPO ORM library. This component fully supports database server mode (which delegates all data processing to the database server), and loads only records to be displayed on screen. This functionality dramatically increases the control’s performance when working with large datasets.
Binding to Data
The following steps show how to use an XpoDataSource component to bind ASPxCardView to a dataset in server mode.
Create and customize an XpoDataSource object. At design time, you can find this component in the Toolbox and add it to the page.
Note
Refer to the following section for more information: Get Started with XPO.
For information on generating persistent objects for existing data tables, see the following help topic: Generating Persistent Objects for Existing Data Tables.
- Set the XpoDataSource component’s XpoDataSource.ServerMode property to
true
. This enables database server mode. - Bind ASPxCardView to XpoDataSource.
- Provide connection settings to the target data store.
Data Stores Supported in Server Mode
In server mode, the ASPxCardView control uses methods provided by eXpress Persistent Objects for .NET (XPO) to connect to a data store. It works with all data stores supported by XPO - as listed in the following table.
Database Engine | Version(s) | XPO Data Store Adapter | .NET Standard 2.0 Support | Database Provider Assembly |
---|---|---|---|---|
Advantage | Advantage Database Server v9.1, Advantage Database Server v10.1, Advantage Database Server v11.1 | AdvantageConnectionProvider |
| Advantage.Data.Provider.dll 9.10.2.0 Advantage.Data.Provider.dll 10.10.0.49 Advantage.Data.Provider.dll 11.10.2.24 |
ASA | SQL Anywhere 16, SQL Anywhere 17 | AsaConnectionProvider |
| iAnywhere.Data.SQLAnywhere.dll 16.0.0.13242 Sap.Data.SQLAnywhere.v4.0 17.0.0.13584 Sap.Data.SQLAnywhere.v4.5 17.0.0.13584 |
ASE | Sybase Adaptive Server 12, Sybase Adaptive Server 15.5, Sybase Adaptive Server 16 | AseConnectionProvider |
| Sybase.Data.AseClient.dll 1.15.50.0 Sybase.AdoNet2.AseClient 16.0.0.2 Sybase.AdoNet35.AseClient 16.0.0.2 Sybase.AdoNet4.AseClient 16.0.0.2 |
DB2 | DB2 9.7.4 | DB2ConnectionProvider | IBM.Data.DB2.dll 9.7.4.4 IBM.Data.DB2.Core.dll 1.2.2.100 (.NET 6.0+) | |
Firebird | Firebird 1.5, Firebird 2.5.7, Firebird 3.0.2 | FirebirdSql.Data.Firebird.dll 2.5.1.0 FirebirdSql.Data.FirebirdClient.dll 5.12.1.0 | ||
MSAccess | Microsoft Jet |
| System.Data.dll | |
MSSqlServer | Microsoft SqlServer 7.0, Microsoft SqlServer 2000, MS SQL Server 2000 Desktop Engine (MSDE 2000), Microsoft SQL Server 2005, SQL Server 2005 Express Edition, SQL Server 2008, SQL Azure™ Database, SQL Server 2008 R2, SQL Server 2008 R2 Express, SQL Server 2012, SQL Server 2012 Express (including LocalDB), SQL Server 2014, SQL Server 2014 Express (including LocalDB), SQL Server 2016, SQL Server 2016 Express (including LocalDB), SQL Server 2017 | System.Data.dll System.Data.SqlClient 4.4.0 (.NET 6.0+) | ||
MSSqlServerCE | Microsoft SqlServer 2005 Mobile, SQL Server 2005 Compact Edition (Microsoft SqlServer 2005 Everywhere Edition CTP), SQL Server Compact 3.5, SQL Server Compact 4.0 | MSSqlCEConnectionProvider |
| System.Data.SqlServerCe.dll 3.5.0 System.Data.SqlServerCe.dll 4.0.8482.1 |
MySql | MySQL Server 4.1, MySQL Server 5.0, MySQL Server 5.1, MySQL Server 5.7, MySQL Server 8.0.12 | MySqlConnectionProvider | MySql.Data.dll 8.0.12.0 (.NET 6.0+) | |
Oracle | Oracle 9i, Oracle 10g, Oracle 11g, Oracle 12c | OracleConnectionProvider ODPConnectionProvider ODPManagedConnectionProvider | System.Data.OracleClient.dll 2.0.0.0 Oracle.DataAccess.dll 4.122.1.0 Oracle.ManagedDataAccess.dll 4.122.1.0 Oracle.ManagedDataAccess.Core.dll 2.18.3 (.NET Standard 2.0) | |
Pervasive | Pervasive PSQL 9, Pervasive PSQL 10, Pervasive PSQL 11 | PervasiveSqlConnectionProvider |
| Pervasive.Data.SqlClient.dll 2.10.0.15 Pervasive.Data.SqlClient.dll 3.5.0.1811 |
PostgreSQL | PostgreSQL 7, PostgreSQL 8, PostgreSQL 9, PostgreSQL 10, PostgreSQL 11 | PostgreSqlConnectionProvider | Npgsql.dll 2.0.11.0 Npgsql.dll 3.2.5.0 Npgsql.dll 3.2.5.0 (.NET 6.0+) Npgsql.dll 4.0.3.0 Npgsql.dll 4.0.3.0 (.NET 6.0+) | |
SQLite | SQLite 3 | SQLiteConnectionProvider | System.Data.SQLite.dll 1.0.88.0 Microsoft.Data.SQLite 2.0.0 (.NET Standard 2.0) | |
VistaDB | VistaDB 4, VistaDB 5 | VistaDBConnectionProvider |
| VistaDB.4.dll 4.0.0.0 VistaDB.5.NET40.dll 5.2.0.0 |
Note that the database provider assembly versions listed in the table above are the versions that have been tested with the current XPO version. Since XPO loads ADO.NET provider assemblies dynamically, you can use any specific version of the provider.
Note
XPO does not support tables with multi-column (compound) keys or indexes in ASE databases. To avoid exceptions when connecting to ASE databases containing these tables, use one-column keys or indexes.
Note
We do not recommend binding the ASPxCardView control to file-based databases (e.g., MS Access, VistaDB). These databases do not have the transaction speed, data security and data integrity of server-based database engines (e.g., MSSqlServer).
Database Server Mode Limitations
In database server mode, ASPxCardView does not have simultaneous access to bound data in its entirety. This imposes some limitations on the grid’s features, which are still available in regular binding mode. see the following topic for information on features that are not supported in server mode: Database Server Mode Limitations.