XPO Data Source
- 2 minutes to read
An XPO data source gets data from eXpress Persistent Objects.
Design Time
The XPO Data Source requires additional configuration to allow users to create the data source in a Data Source Wizard:
Create a data layer to access a data store.
In this example, a data layer (represented by the SimpleDataLayer class object) is created and assigned to the XpoDefault.DataLayer property using the XpoDefault.GetDataLayer method.Create XPO classes:
- Refer to the following topic for information on how to create XPO classes in the Data Model Wizard: Data Model Wizard.
- Refer to the following example for information on how to create XPO classes in code: Create persistent classes and connect XPO to the database.
Add the XPO value to the DashboardDesignerDataSourceWizardSettings.AvailableDataSourceTypes property to enable users to create the XPO data source. The XPO data source is added to the list of available data sources in the Data Source Wizard.
Tip
Documentation: Getting Started with XPO
Example on GitHub: How to Bind a Dashboard to the XPO Data Source at Design-Time
To connect to the pre-configured XPO data source, follow the steps below:
Click the New Data Source button in the Data Source ribbon tab.
On the first page of the invoked Data Source Wizard dialog, select eXpress Persistent Objects (XPO) and click Next. Then, specify the entity type.
Important
Initially, the current page does not contain the eXpress Persistent Objects (XPO) data source type. To customize the list of displayed data source types, use the DashboardDesignerDataSourceWizardSettings.AvailableDataSourceTypes property.
Runtime
Create a DashboardXpoDataSource object and use the ConnectionStringName property to specify the name of the connection string defined in the application’s configuration file.
Pass the persistent object type to the SetEntityType method.
The code sample below illustrates how to connect to the XPO data source.
using DevExpress.DashboardCommon;
// ...
public static DashboardXpoDataSource CreateXpoDataSource()
{
DashboardXpoDataSource dataSource = new DashboardXpoDataSource()
{
ConnectionStringName = "northwind"
};
dataSource.SetEntityType(typeof(nwind.Customers));
return dataSource;
}