Skip to main content
.NET Framework 4.5.2+
  • The page you are viewing does not exist in the .NET 6.0+ platform documentation. This link will take you to the parent topic of the current section.

XpoDataSource Class

A data source control that is a collection of persistent objects for ASP.NET controls.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v24.1.dll

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

#Declaration

public class XpoDataSource :
    DataSourceControl,
    IXPClassInfoProvider,
    IXPDictionaryProvider

#Remarks

The XpoDataSource component is an XPCollection counterpart for ASP.NET controls. In essence, the XpoDataSource component retrieves persistent objects from a data store and can be bound to a visual data-aware control (for example, ASPxGridView, ASPxNewsControl, ASPxCloudControl, etc.)

When creating an XpoDataSource, you should specify the type of objects to store. To do this, use the XpoDataSource.TypeName property.

html
<dxxpo:XpoDataSource ID="XpoDataSource1" 
                     runat="server" 
                     TypeName="Northwind.Order" 
                     Criteria="[ShippedDate] &gt;= ? And [ShippedDate] &lt; ?">
  <CriteriaParameters>
    <asp:ControlParameter ControlID="deStartDate" 
                          Name="@StartDate" 
                          PropertyName="Value" />
    <asp:ControlParameter ControlID="deEndDate" 
                          Name="@EndDate" 
                          PropertyName="Value" />
  </CriteriaParameters>
</dxxpo:XpoDataSource>

Guestbook_XpoDataSource

Link the XpoDataSource to a Session via the XpoDataSource.Session property, so that the data source can access the data store (database) to load and save persistent objects.

Use the XpoDataSource.Criteria property to specify how the collection is filtered during loading on the server side. The criteria expression should comply with Criteria Language Syntax.

using System;
using DevExpress.Xpo;
// ...
Session session1;
protected void Page_Init(object sender, EventArgs e) {
    session1 = new Session();
    XpoDataSource1.Session = session1;
    XpoDataSource1.Criteria = "[Age] > ?";
    XpoDataSource1.CriteriaParameters.Add("Age", TypeCode.Int32, "30");
}

For more information on how to retrieve specific data, see How To: Connect XPO to a Database Server (ASP.NET WebForms).

#Inheritance

See Also