Skip to main content
.NET 6.0+

Session.GetObjectsFromQuery(XPClassInfo, List<XPMemberInfo>, String) Method

Executes a SQL query and returns its result set as a collection of non-persistent objects.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v24.1.dll

NuGet Package: DevExpress.Xpo

Declaration

public ICollection GetObjectsFromQuery(
    XPClassInfo classInfo,
    List<XPMemberInfo> members,
    string sql
)

Parameters

Name Type Description
classInfo XPClassInfo

An XPClassInfo object which contains the metadata information on a non-persistent class corresponding to the query’s result set. The class must be decorated with NonPersistentAttribute.

members List<XPMemberInfo>

Specifies object members mapped to columns in the resulting set. The order of list elements should correspond to the order of the resulting set columns.

sql String

Specifies an SQL statement.

Returns

Type Description
ICollection

A collection of non-persistent classInfo objects instantiated with data obtained via the specified SQL query.

Remarks

This method performs the following:

  • Executes the specified SQL query and obtains the query result as a result set.
  • Populates a collection with classInfo objects that are instantiated with the result set’s data, based on the mapping information passed as the members parameter. Note that classInfo should represent a non-persistent class decorated with a NonPersistentAttribute.

Note

The GetObjectsFromQuery method throws an exception if the members list includes any of the following classInfo members:

  • A property that is not defined within the classInfo object.
  • A struct type member.
  • A reference to a class with a struct type member.
  • A collection used in object relations.

To learn more about executing SQL queries in XPO and retrieving objects from query results, refer to Direct SQL Queries.

See Also