Skip to main content
All docs
V26.1
  • .NET 8.0+

    Session.ExecuteSprocParametrizedAsync(CancellationToken, String, SprocParameter[]) Method

    SECURITY-RELATED CONSIDERATIONS

    This method executes a raw stored procedure. Always validate, sanitize, or parameterize externally supplied names and values to prevent unauthorized access to sensitive information.

    Asynchronously executes the specified stored procedure with named parameters and returns its result set.

    Namespace: DevExpress.Xpo

    Assembly: DevExpress.Xpo.v26.1.dll

    Declaration

    public Task<SelectedData> ExecuteSprocParametrizedAsync(
        CancellationToken cancellationToken,
        string sprocName,
        params SprocParameter[] parameters
    )

    Parameters

    Name Type Description
    cancellationToken CancellationToken

    A CancellationToken object that delivers a cancellation notice to the running operation.

    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<SelectedData>

    A Task<TResult> that returns a SelectedData object specifying the result set returned by the specified stored procedure.

    Remarks

    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. If the stored procedure is a function, the resulting parameter with the SprocParameter.Direction property set to ReturnValue should be passed.

    Out parameter values are returned in a supplementary ResultSet which includes two columns - parameter names and values. In the case where the procedure returns nothing but out parameter values, the first result set will be empty and the second will contain result values. In the case where the stored procedure is a function, one more ResultSet, which contains a single cell with the function result, is returned.

    Below is an example of a ExecuteSprocParametrizedAsync method call.

    SelectedData data = await session.ExecuteSprocParametrizedAsync("TestProc", new SprocParameter("@first", 123), new SprocParameter("@second", "abc"));
    

    To visualize the result set returned by the ExecuteSprocParametrizedAsync method, use XPDataView. To learn how to access the resulting data, refer to How to: Access Data in SQL Query Results. For example, you can bind the GridControl control to the ExecuteSprocParametrizedAsync result as follows:

    using DevExpress.Xpo;
    using DevExpress.Xpo.DB;
    // ...
    SelectedData sprocData = await session.ExecuteSprocParametrizedAsync("TestProc", new SprocParameter("@first", 123), new SprocParameter("@second", "abc"));
    gridControl1.DataSource = new XPDataView(session.Dictionary, session.GetClassInfo(typeof(MySproc)), sprocData);
    

    To learn more about executing stored procedures in XPO, refer to Stored Procedures.

    See Also