Share via


DataverseDataOperationExecutor class

DataverseDataOperation provides functionality for performing CRUD operations against the Dataverse data source using the XRM WebApi or runtime metadata client.

Constructors

DataverseDataOperationExecutor(IRuntimeClientProvider)

Methods

createRecordAsync<TRequest, TResponse>(string, TRequest)

Creates a new record in Dataverse

deleteRecordAsync(string, string)

Deletes a record from Dataverse

executeAsync<TRequest, TResponse>(IDataOperation<TRequest>)

Executes a custom Dataverse operation

getDatabaseReferences()

Returns the database references for Dataverse, grouped by environment/database. These come from the launch app response via runtime metadata client.

retrieveMultipleRecordsAsync<TResponse>(string, IOperationOptions)

Retrieves multiple records from Dataverse

retrieveRecordAsync<TResponse>(string, string, IOperationOptions)

Retrieves a single record from Dataverse

updateRecordAsync<TRequest, TResponse>(string, string, TRequest)

Updates an existing record in Dataverse

Constructor Details

DataverseDataOperationExecutor(IRuntimeClientProvider)

new DataverseDataOperationExecutor(clientProvider: IRuntimeClientProvider)

Parameters

clientProvider
IRuntimeClientProvider

Method Details

createRecordAsync<TRequest, TResponse>(string, TRequest)

Creates a new record in Dataverse

function createRecordAsync<TRequest, TResponse>(tableName: string, data: TRequest): Promise<IOperationResult<TResponse>>

Parameters

tableName

string

The name of the table

data

TRequest

The record data to create

Returns

Promise<IOperationResult<TResponse>>

Promise resolving to operation result

deleteRecordAsync(string, string)

Deletes a record from Dataverse

function deleteRecordAsync(tableName: string, id: string): Promise<IOperationResult<void>>

Parameters

tableName

string

The name of the table

id

string

The record identifier

Returns

Promise<IOperationResult<void>>

Promise resolving to operation result

executeAsync<TRequest, TResponse>(IDataOperation<TRequest>)

Executes a custom Dataverse operation

function executeAsync<TRequest, TResponse>(operation: IDataOperation<TRequest>): Promise<IOperationResult<TResponse>>

Parameters

operation

IDataOperation<TRequest>

The operation to execute

Returns

Promise<IOperationResult<TResponse>>

Promise resolving to operation result

getDatabaseReferences()

Returns the database references for Dataverse, grouped by environment/database. These come from the launch app response via runtime metadata client.

function getDatabaseReferences(): Promise<DatabaseReferences>

Returns

retrieveMultipleRecordsAsync<TResponse>(string, IOperationOptions)

Retrieves multiple records from Dataverse

function retrieveMultipleRecordsAsync<TResponse>(tableName: string, options?: IOperationOptions): Promise<IOperationResult<TResponse[]>>

Parameters

tableName

string

The name of the table

options
IOperationOptions

The retrieval options

Returns

Promise<IOperationResult<TResponse[]>>

Promise resolving to operation result

retrieveRecordAsync<TResponse>(string, string, IOperationOptions)

Retrieves a single record from Dataverse

function retrieveRecordAsync<TResponse>(tableName: string, id: string, options?: IOperationOptions): Promise<IOperationResult<TResponse>>

Parameters

tableName

string

The name of the table

id

string

The record identifier

options
IOperationOptions

The retrieval options

Returns

Promise<IOperationResult<TResponse>>

Promise resolving to operation result

updateRecordAsync<TRequest, TResponse>(string, string, TRequest)

Updates an existing record in Dataverse

function updateRecordAsync<TRequest, TResponse>(tableName: string, id: string, data: TRequest): Promise<IOperationResult<TResponse>>

Parameters

tableName

string

The name of the table

id

string

The record identifier

data

TRequest

The updated record data

Returns

Promise<IOperationResult<TResponse>>

Promise resolving to operation result