BulkFileOperation Classe

Definição

O BulkFileOperation fornece funcionalidade para executar operações com segurança em grande parte de arquivos, atualmente abertos na solução. Um dos exemplos é SCC. Antes de a operação, o consumidor deve fornecer um conjunto estimado de arquivos e pastas em que as alterações são esperadas. Essa classe cuida da lógica de "mãos" para todos esses arquivos. Após a conclusão da operação, o BulkFileOperation faz todo o trabalho necessário para a lógica "prática" e toma uma decisão sobre o que recarregar (projeto/solução/nada). A ordem das operações é a seguinte: QueryBulkFileOperationAsync BeginAsync (opcional) endasync (opcional, mas o BeginAsync precisa ser concluído antes disso) descartar essa API é muito estrita ao uso inadequado, por exemplo, chamar endasync sem esperar por BeginAsync é feito ou chamar o mesmo método duas vezes e assim por diante. Nesse caso, a exceção será lançada.

public ref class BulkFileOperation : Microsoft::VisualStudio::PlatformUI::DisposableObject
public class BulkFileOperation : Microsoft.VisualStudio.PlatformUI.DisposableObject
type BulkFileOperation = class
    inherit DisposableObject
Public Class BulkFileOperation
Inherits DisposableObject
Herança
BulkFileOperation

Propriedades

IsDisposed

Retorna se o objeto foi Descartado uma vez, protege contra descarte duplo

(Herdado de DisposableObject)
IsInProgress

Obtém a indicação se algum BulkFileOperation está em andamento no momento. Seria útil em vários casos:-para evitar obter exceção se você quiser executar o New BulkFileOperation; -para não perder o contexto atual, quando subscibes em eventos de início/término.

IsSynchronousUpdateNeeded

Obtém o valor se a atualização síncrona será necessária depois que a operação de arquivo em massa for concluída.

ProjectsToReload

Obtém a lista do caminho completo para os arquivos de projeto que precisarão ser recarregados/atualizados com a operação de arquivo em massa solicitada.

TelemetryInfo

Obtenha informações sobre estatísticas para o BulkFileOperation atual. É possível anexá-lo ao evento e ter informações adicionais sobre intervalos e contagens.

UnsavedFiles

O subconjunto de caminhos de arquivo de documento que estão em uso no momento.

Métodos

BeginAsync(CancellationToken)

Inicie a operação de arquivo em massa com base no método QueryBulkFileOperationAsync anterior.

Dispose()

Descarta o objeto atual e, em seguida, suprime a finalização posterior.

(Herdado de DisposableObject)
Dispose(Boolean)

Sobrecarga virtual padrão para IDisposable padrão

(Herdado de DisposableObject)
DisposeManagedResources()

Não há nenhuma proteção para chamar esse método enquanto outros métodos estão em andamento. Por exemplo, se BeginAsync estiver em andamento e as chamadas de cliente Disposeem (), ele descartará silenciosamente os recursos e moverá o objeto para o estado Descartado.

DisposeNativeResources()

Permite que classes derivadas forneçam manipulação personalizada de Dispose para recursos nativos

(Herdado de DisposableObject)
EndAsync()

Conclui a operação de arquivo em massa. Toma as decisões necessárias sobre o que recarregar (projeto/solução/nada). Faz toda a lógica prática e adiciona arquivos/pastas no controle. Este método não é cancelável porque, caso contrário, o sistema estará em estado desconhecido:-alguns arquivos foram entregues, alguns não; -se projetos/arquivo de solução foram atualizados, e a solução não foi recarregada, o que é a experiência de UX inválida.

QueryBulkFileOperationAsync(IEnumerable<String>, IEnumerable<String>, CancellationToken)

Iniciar operação de arquivo em massa. Esse método é chamado pelo cliente antes de iniciar uma operação de arquivo em massa, por exemplo, check-out do git.

ThrowIfDisposed()

Gera um ObjectDisposedException se este objeto foi descartado

(Herdado de DisposableObject)

Eventos

BeforeFlushPendingFileChangeNotification

Envia o sinal BeforeFlushPendingFileChangeNotification quando o BulkFileOperation termina antes de retomar o serviço FileChange.

Begin

Envia o sinal de início quando BulkFileOperation começa e processamos todos os sinais de serviço de FileChange e o pausam.

Disposing

Gerado quando o evento está sendo descartado, enquanto ele ainda está acessível.

(Herdado de DisposableObject)
End

Envia o sinal de término quando o BulkFileOperation termina no final.

Aplica-se a