Partilhar via


DataServiceContext.BeginSaveChanges Método

Definição

Envia as alterações pendentes ao serviço de dados coletadas pelo DataServiceContext, desde as últimas alterações salvas.

Sobrecargas

BeginSaveChanges(SaveChangesOptions, AsyncCallback, Object)

Envia de forma assíncrona as alterações pendentes ao serviço de dados coletadas pelo DataServiceContext, desde as últimas alterações salvas.

BeginSaveChanges(AsyncCallback, Object)

Envia de forma assíncrona as alterações pendentes ao serviço de dados coletadas pelo DataServiceContext, desde as últimas alterações salvas.

BeginSaveChanges(SaveChangesOptions, AsyncCallback, Object)

Envia de forma assíncrona as alterações pendentes ao serviço de dados coletadas pelo DataServiceContext, desde as últimas alterações salvas.

public:
 IAsyncResult ^ BeginSaveChanges(System::Data::Services::Client::SaveChangesOptions options, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSaveChanges (System.Data.Services.Client.SaveChangesOptions options, AsyncCallback callback, object state);
member this.BeginSaveChanges : System.Data.Services.Client.SaveChangesOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginSaveChanges (options As SaveChangesOptions, callback As AsyncCallback, state As Object) As IAsyncResult

Parâmetros

options
SaveChangesOptions

As opções de como o cliente pode salvar o conjunto pendente de alterações.

callback
AsyncCallback

O delegado a ser chamado quando a operação for concluída.

state
Object

O objeto de estado definido pelo usuário usado para passar dados de contexto ao método de retorno de chamada.

Retornos

Um IAsyncResult que representa o status da operação assíncrona.

Comentários

As alterações são adicionadas ao DataServiceContext chamando , AddObject, AttachToAddLink, AttachLink, DeleteObject, DeleteLink, Detachou DetachLink.

Se Batch estiver definido, todas as alterações pendentes serão incluídas em um único conjunto de alterações em um lote e enviadas ao serviço de dados em uma única solicitação HTTP. Isso requer que o serviço de destino dê suporte ao envio em lote.

Se Batch não estiver definido:

  • As alterações são enviadas para o serviço de dados, como no SaveChanges() método : uma operação para uma solicitação HTTP.

  • O StatusCode é sempre 200.

  • A Headers propriedade retorna uma coleção vazia.

Se ContinueOnError estiver definido:

  • Se ocorrer um erro ao processar uma operação em um conjunto de alterações, as operações subsequentes no conjunto de alterações não serão tentadas; no entanto, o serviço de dados continuará processando o próximo conjunto de alterações no lote.

  • Essa opção não pode ser definida quando Batch está definida porque, quando o envio em lote está habilitado, todas as operações são posicionadas em um único conjunto de alterações.

Se ContinueOnError não estiver definido:

  • Se ocorrer um erro durante o processamento de uma operação, nenhuma operação adicional será processada pelo serviço de dados.

Uma resposta é gerada informando ao cliente quais operações foram executadas, seus resultados e quais operações não foram tentadas devido ao erro.

Aplica-se a

BeginSaveChanges(AsyncCallback, Object)

Envia de forma assíncrona as alterações pendentes ao serviço de dados coletadas pelo DataServiceContext, desde as últimas alterações salvas.

public:
 IAsyncResult ^ BeginSaveChanges(AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSaveChanges (AsyncCallback callback, object state);
member this.BeginSaveChanges : AsyncCallback * obj -> IAsyncResult
Public Function BeginSaveChanges (callback As AsyncCallback, state As Object) As IAsyncResult

Parâmetros

callback
AsyncCallback

O delegado a ser chamado quando a operação for concluída.

state
Object

O objeto de estado definido pelo usuário usado para passar dados de contexto ao método de retorno de chamada.

Retornos

Um IAsyncResult que representa o status da operação assíncrona.

Comentários

As alterações são adicionadas ao DataServiceContext chamando , AddObject, AttachToAddLink, AttachLink, DeleteObject, DeleteLink, Detachou DetachLink.

As alterações são enviadas para o serviço de dados, assim como acontece com o SaveChanges método , uma operação de alteração por solicitação HTTP.

Se ocorrer um erro durante o processamento de uma operação, nenhuma operação adicional será processada pelo serviço de dados. Em vez disso, uma resposta é gerada informando ao cliente quais operações foram executadas, os resultados e quais operações não foram tentadas devido a um erro.

Aplica-se a