Session.GetObjectsFromSprocParametrizedAsync(CancellationToken, XPClassInfo, String, SprocParameter[]) Method
Executes a stored procedure with named parameters and returns its result set as a collection of non-persistent objects.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v24.2.dll
Declaration
Parameters
Name | Type | Description |
---|---|---|
cancellationToken | CancellationToken | A CancellationToken object that delivers a cancellation notice to the running operation. |
classInfo | XPClassInfo | An XPClassInfo object which contains the metadata information on a non-persistent class corresponding to the stored procedure’s result set. The class must be decorated with NonPersistentAttribute. |
sprocName | String | A String value that specifies the stored procedure’s name. |
parameters | DevExpress.Xpo.DB.SprocParameter[] | An array of SprocParameter objects specifying parameters to pass to the stored procedure. |
Returns
Type | Description |
---|---|
Task<ICollection> | A Task<TResult> that returns a collection of non-persistent classInfo objects instantiated with data obtained via the specified stored procedure. |
Remarks
XPClassInfo classInfo = session.GetClassInfo<CustOrderHistModel>();
ICollection sprocResultData = await session.GetObjectsFromSprocParametrizedAsync(CancellationToken.None, classInfo, "CustOrderHist", new SprocParameter("CustomerID", "ALFKI"));
This method performs the following:
- Executes the specified stored procedure with parameters and obtains the 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.
This method takes named parameters. The parameter order is arbitrary. The SprocParameter.Direction property should be set to Output for out parameters. Based on the current ADO.NET provider, the data type (SprocParameter.DbType), scale (SprocParameter.Scale) and precision (SprocParameter.Precision) may be required.
To learn more about executing stored procedures in XPO and retrieving objects from the results, refer to Stored Procedures.