Condividi tramite


Workspace Classe

Definizione

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

public ref class Workspace abstract : IDisposable
public abstract class Workspace : IDisposable
type Workspace = class
    interface IDisposable
Public MustInherit Class Workspace
Implements IDisposable
Ereditarietà
Workspace
Derivato
Implementazioni

Costruttori

Workspace(HostServices, String)

Costruisce una nuova istanza dell'area di lavoro.

Proprietà

CanOpenDocuments

True se l'area di lavoro supporta l'apertura e la chiusura manuale dei documenti.

CurrentSolution

Soluzione corrente.

La soluzione è un modello non modificabile del set corrente di progetti e documenti di origine. Fornisce l'accesso al testo di origine, agli alberi della sintassi e alla semantica.

Questa proprietà può cambiare quando l'area di lavoro reagisce alle modifiche nell'ambiente o dopo TryApplyChanges(Solution) la chiamata.

Kind

Tipo di area di lavoro. Questa operazione è in genere Host se originata dall'ambiente host, ma può essere qualsiasi altro nome usato per un tipo specifico di area di lavoro.

Options
Obsoleti.

Ottiene o imposta il set di tutte le opzioni globali e Options. Setter forza anche gli aggiornamenti CurrentSolution per fare in modo che l'oggetto sia aggiornato Options.

PartialSemanticsEnabled

Eseguire l'override di questa proprietà se l'area di lavoro supporta la semantica parziale per i documenti.

Services

Provider di servizi dall'host per l'implementazione delle funzionalità dell'area di lavoro.

Metodi

AdjustReloadedProject(Project, Project)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

AdjustReloadedSolution(Solution, Solution)

Questo metodo viene chiamato durante OnSolutionReload. Eseguire l'override di questo metodo se si desidera modificare la soluzione ricaricata.

ApplyAdditionalDocumentAdded(DocumentInfo, SourceText)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per aggiungere un nuovo documento aggiuntivo a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di documenti aggiuntivi.

ApplyAdditionalDocumentRemoved(DocumentId)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un documento aggiuntivo da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione di documenti aggiuntivi.

ApplyAdditionalDocumentTextChanged(DocumentId, SourceText)

Questo metodo viene chiamato per modificare il testo di un documento aggiuntivo.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica del testo aggiuntivo del documento.

ApplyAnalyzerConfigDocumentAdded(DocumentInfo, SourceText)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per aggiungere un nuovo documento di configurazione dell'analizzatore a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di documenti di configurazione dell'analizzatore.

ApplyAnalyzerConfigDocumentRemoved(DocumentId)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un documento di configurazione dell'analizzatore da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei documenti di configurazione dell'analizzatore.

ApplyAnalyzerConfigDocumentTextChanged(DocumentId, SourceText)

Questo metodo viene chiamato per modificare il testo di un documento di configurazione dell'analizzatore.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica del testo del documento di configurazione dell'analizzatore.

ApplyAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per aggiungere un riferimento dell'analizzatore a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di riferimenti all'analizzatore.

ApplyAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un riferimento dell'analizzatore da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei riferimenti dell'analizzatore.

ApplyCompilationOptionsChanged(ProjectId, CompilationOptions)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per modificare le opzioni di compilazione.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica delle opzioni di compilazione.

ApplyDocumentAdded(DocumentInfo, SourceText)

Questo metodo viene chiamato durante TryApplyChanges(Solution) l'aggiunta di un nuovo documento a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di documenti.

ApplyDocumentInfoChanged(DocumentId, DocumentInfo)

Questo metodo viene chiamato per modificare le informazioni di un documento.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica delle informazioni di un documento.

ApplyDocumentRemoved(DocumentId)

Questo metodo viene chiamato durante TryApplyChanges(Solution) la rimozione di un documento da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei documenti.

ApplyDocumentTextChanged(DocumentId, SourceText)

Questo metodo viene chiamato per modificare il testo di un documento.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica del testo del documento.

ApplyMetadataReferenceAdded(ProjectId, MetadataReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per aggiungere un riferimento ai metadati a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di riferimenti ai metadati.

ApplyMetadataReferenceRemoved(ProjectId, MetadataReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un riferimento ai metadati da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei riferimenti ai metadati.

ApplyParseOptionsChanged(ProjectId, ParseOptions)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per modificare le opzioni di analisi.

Eseguire l'override di questo metodo per implementare la funzionalità di modifica delle opzioni di analisi.

ApplyProjectAdded(ProjectInfo)

Questo metodo viene chiamato durante TryApplyChanges(Solution) l'aggiunta di un progetto alla soluzione corrente.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di progetti.

ApplyProjectChanges(ProjectChanges)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per ogni progetto aggiunto, rimosso o modificato.

Eseguire l'override di questo metodo se si desidera modificare la modalità di applicazione delle modifiche del progetto.

ApplyProjectReferenceAdded(ProjectId, ProjectReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) l'aggiunta di un riferimento di progetto a un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di aggiunta di riferimenti al progetto.

ApplyProjectReferenceRemoved(ProjectId, ProjectReference)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un riferimento al progetto da un progetto.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei riferimenti al progetto.

ApplyProjectRemoved(ProjectId)

Questo metodo viene chiamato durante TryApplyChanges(Solution) per rimuovere un progetto dalla soluzione corrente.

Eseguire l'override di questo metodo per implementare la funzionalità di rimozione dei progetti.

CanApplyChange(ApplyChangesKind)

Determina se il tipo specifico di modifica è supportato dal TryApplyChanges(Solution) metodo .

CanApplyCompilationOptionChange(CompilationOptions, CompilationOptions, Project)

Chiamato durante una chiamata a TryApplyChanges(Solution) per determinare se è consentita una modifica specifica a CompilationOptions .

CanApplyParseOptionChange(ParseOptions, ParseOptions, Project)

Chiamato durante una chiamata a TryApplyChanges(Solution) per determinare se è consentita una modifica specifica a ParseOptions .

CheckAdditionalDocumentIsInCurrentSolution(DocumentId)

Genera un'eccezione se un documento aggiuntivo non fa parte della soluzione corrente.

CheckAdditionalDocumentIsNotInCurrentSolution(DocumentId)

Genera un'eccezione se un documento aggiuntivo fa già parte della soluzione corrente.

CheckAnalyzerConfigDocumentIsInCurrentSolution(DocumentId)

Genera un'eccezione se una configurazione dell'analizzatore non fa parte della soluzione corrente.

CheckAnalyzerConfigDocumentIsNotInCurrentSolution(DocumentId)

Genera un'eccezione se il documento di configurazione dell'analizzatore fa già parte della soluzione corrente.

CheckCanOpenDocuments()

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

CheckDocumentCanBeRemoved(DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

CheckDocumentIsClosed(DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

CheckDocumentIsInCurrentSolution(DocumentId)

Genera un'eccezione se un documento non fa parte della soluzione corrente.

CheckDocumentIsNotInCurrentSolution(DocumentId)

Genera un'eccezione se un documento fa già parte della soluzione corrente.

CheckDocumentIsOpen(DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

CheckProjectCanBeRemoved(ProjectId)

Attualmente i progetti possono sempre essere rimossi, ma questo metodo esiste ancora perché è protetto e non si vuole interrompere le persone che possono derivare da Workspace e chiamarlo o eseguirne l'override.

CheckProjectDoesNotContainOpenDocuments(ProjectId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

CheckProjectDoesNotHaveAnalyzerReference(ProjectId, AnalyzerReference)

Genera un'eccezione se un progetto ha già un riferimento specifico all'analizzatore.

CheckProjectDoesNotHaveMetadataReference(ProjectId, MetadataReference)

Genera un'eccezione se un progetto ha già un riferimento ai metadati specifico.

CheckProjectDoesNotHaveProjectReference(ProjectId, ProjectReference)

Genera un'eccezione se un progetto ha già un riferimento al progetto specifico.

CheckProjectDoesNotHaveTransitiveProjectReference(ProjectId, ProjectId)

Genera un'eccezione se il progetto ha un riferimento transitivo a un altro progetto.

CheckProjectHasAnalyzerReference(ProjectId, AnalyzerReference)

Genera un'eccezione se un progetto non dispone di un riferimento all'analizzatore specifico.

CheckProjectHasMetadataReference(ProjectId, MetadataReference)

Genera un'eccezione se un progetto non dispone di un riferimento di metadati specifico.

CheckProjectHasProjectReference(ProjectId, ProjectReference)

Genera un'eccezione se un progetto non dispone di un riferimento al progetto specifico.

CheckProjectIsInCurrentSolution(ProjectId)

Genera un'eccezione se il progetto non fa parte della soluzione corrente.

CheckProjectIsNotInCurrentSolution(ProjectId)

Genera un'eccezione perché il progetto fa parte della soluzione corrente.

CheckSolutionIsEmpty()

Genera un'eccezione perché la soluzione non è vuota.

ClearDocumentData(DocumentId)

Questo metodo viene chiamato per cancellare un singolo documento viene rimosso.

Eseguire l'override di questo metodo se si desidera eseguire operazioni aggiuntive quando un documento viene rimosso. Chiamare il metodo di base alla fine del metodo.

ClearOpenDocument(DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

ClearOpenDocument(DocumentId, Boolean)
Obsoleti.

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

ClearProjectData(ProjectId)

Questo metodo viene chiamato quando viene rimosso un singolo progetto.

Eseguire l'override di questo metodo se si desidera eseguire operazioni aggiuntive quando viene rimosso un progetto. Chiamare il metodo di base alla fine del metodo.

ClearSolution()

Cancella tutti i dati della soluzione e svuota la soluzione corrente.

ClearSolutionData()

Questo metodo viene chiamato quando una soluzione viene cancellata.

Eseguire l'override di questo metodo se si desidera eseguire operazioni aggiuntive quando una soluzione viene cancellata. Chiamare il metodo di base alla fine del metodo.

Questo metodo viene chiamato mentre viene mantenuto un blocco. Prestare molta attenzione quando si esegue l'override come lavoro innapropriato può causare deadlock.

CloseAdditionalDocument(DocumentId)

Chiudere il documento aggiuntivo specificato nell'ambiente host.

CloseAnalyzerConfigDocument(DocumentId)

Chiudere il documento di configurazione dell'analizzatore specificato nell'ambiente host.

CloseDocument(DocumentId)

Chiudere il documento specificato nell'ambiente host.

CreateSolution(SolutionId)

Creare una nuova istanza di soluzione vuota associata all'area di lavoro.

CreateSolution(SolutionInfo)

Creare una nuova istanza di soluzione vuota associata all'area di lavoro.

Dispose()

Elimina questa area di lavoro. L'area di lavoro può essere usata più a lungo dopo l'eliminazione.

Dispose(Boolean)

Chiamare questo metodo quando l'area di lavoro viene eliminata.

Eseguire l'override di questo metodo per eseguire operazioni aggiuntive quando l'area di lavoro viene eliminata. Chiamare questo metodo alla fine del metodo.

GetAdditionalDocumentName(DocumentId)

Ottiene il nome da utilizzare per un documento aggiuntivo in un messaggio di errore.

GetAnalyzerConfigDocumentName(DocumentId)

Ottiene il nome da utilizzare per un documento dell'analizzatore in un messaggio di errore.

GetDocumentIdInCurrentContext(SourceTextContainer)

Ottiene l'ID del documento associato al contenitore di testo specificato nel contesto corrente. I documenti sono in genere associati a un contenitore di testo quando i documenti vengono aperti.

GetDocumentName(DocumentId)

Ottiene il nome da utilizzare per un documento in un messaggio di errore.

GetOpenDocumentIds(ProjectId)

Ottiene un elenco dei documenti attualmente aperti.

GetProjectName(ProjectId)

Ottiene il nome da utilizzare per un progetto in un messaggio di errore.

GetRelatedDocumentIds(SourceTextContainer)

Ottiene gli ID per i documenti nello CurrentSolution snapshot associato all'oggetto specificato container. I documenti sono in genere associati a un contenitore di testo quando i documenti vengono aperti.

GetWorkspaceRegistration(SourceTextContainer)

Restituisce un WorkspaceRegistration oggetto per un determinato contenitore di testo.

IsDocumentOpen(DocumentId)

Determina se il documento è attualmente aperto nell'ambiente host.

OnAdditionalDocumentAdded(DocumentInfo)

Chiamare questo metodo quando viene aggiunto un documento aggiuntivo a un progetto nell'ambiente host.

OnAdditionalDocumentClosed(DocumentId, TextLoader)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnAdditionalDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnAdditionalDocumentRemoved(DocumentId)

Chiamare questo metodo quando un documento aggiuntivo viene rimosso da un progetto nell'ambiente host.

OnAdditionalDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Chiamare questo metodo quando il testo di un documento aggiuntivo viene aggiornato nell'ambiente host.

OnAdditionalDocumentTextLoaderChanged(DocumentId, TextLoader)

Chiamare questo metodo quando il testo di un documento aggiuntivo viene modificato su disco.

OnAnalyzerConfigDocumentAdded(DocumentInfo)

Chiamare questo metodo quando un documento di configurazione dell'analizzatore viene aggiunto a un progetto nell'ambiente host.

OnAnalyzerConfigDocumentClosed(DocumentId, TextLoader)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnAnalyzerConfigDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnAnalyzerConfigDocumentRemoved(DocumentId)

Chiamare questo metodo quando un documento di configurazione dell'analizzatore viene rimosso da un progetto nell'ambiente host.

OnAnalyzerConfigDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Chiamare questo metodo quando il testo di un documento di configurazione dell'analizzatore viene aggiornato nell'ambiente host.

OnAnalyzerConfigDocumentTextLoaderChanged(DocumentId, TextLoader)

Chiamare questo metodo quando il testo di un documento di configurazione dell'analizzatore viene modificato su disco.

OnAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Chiamare questo metodo quando un riferimento all'analizzatore viene aggiunto a un progetto nell'ambiente host.

OnAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Chiamare questo metodo quando un riferimento all'analizzatore viene rimosso da un progetto nell'ambiente host.

OnAssemblyNameChanged(ProjectId, String)

Chiamare questo metodo quando il nome dell'assembly di un progetto viene modificato nell'ambiente host.

OnCompilationOptionsChanged(ProjectId, CompilationOptions)

Chiamare questo metodo quando le opzioni di compilazione di un progetto vengono modificate nell'ambiente host.

OnDocumentAdded(DocumentInfo)

Chiamare questo metodo quando un documento viene aggiunto a un progetto nell'ambiente host.

OnDocumentClosed(DocumentId, TextLoader, Boolean)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnDocumentClosing(DocumentId)

Eseguire l'override di questo metodo per agire immediatamente quando un documento viene chiuso, anziché attendere che l'evento di modifica dell'area di lavoro corrispondente venga attivato in modo asincrono.

OnDocumentContextUpdated(DocumentId)

Chiamare questo metodo quando un documento è stato reso il contesto attivo nell'ambiente host.

OnDocumentInfoChanged(DocumentId, DocumentInfo)

Chiamare questo metodo quando le informazioni sul documento cambiano, ad esempio il nome, le cartelle o il percorso del file.

OnDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OnDocumentReloaded(DocumentInfo)

Chiamare questo metodo quando un documento viene ricaricato nell'ambiente host.

OnDocumentRemoved(DocumentId)

Chiamare questo metodo quando un documento viene rimosso da un progetto nell'ambiente host.

OnDocumentsAdded(ImmutableArray<DocumentInfo>)

Chiamare questo metodo quando più documenti vengono aggiunti a uno o più progetti nell'ambiente host.

OnDocumentSourceCodeKindChanged(DocumentId, SourceCodeKind)

Chiamare questo metodo quando SourceCodeKind di un documento cambia nell'ambiente host.

OnDocumentTextChanged(Document)

Eseguire l'override di questo metodo per agire immediatamente quando il testo di un documento è stato modificato, anziché attendere che l'evento di modifica dell'area di lavoro corrispondente venga generato in modo asincrono.

OnDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Chiamare questo metodo quando il testo di un documento viene aggiornato nell'ambiente host.

OnDocumentTextLoaderChanged(DocumentId, TextLoader)

Chiamare questo metodo quando il testo di un documento viene modificato su disco.

OnMetadataReferenceAdded(ProjectId, MetadataReference)

Chiamare questo metodo quando un riferimento ai metadati viene aggiunto a un progetto nell'ambiente host.

OnMetadataReferenceRemoved(ProjectId, MetadataReference)

Chiamare questo metodo quando un riferimento ai metadati viene rimosso da un progetto nell'ambiente host.

OnOutputFilePathChanged(ProjectId, String)

Chiamare questo metodo quando il percorso del file di output di un progetto viene modificato nell'ambiente host.

OnOutputRefFilePathChanged(ProjectId, String)

Chiamare questo metodo quando il percorso del file di riferimento di output di un progetto viene modificato nell'ambiente host.

OnParseOptionsChanged(ProjectId, ParseOptions)

Chiamare questo metodo quando le opzioni di analisi di un progetto vengono modificate nell'ambiente host.

OnProjectAdded(ProjectInfo)

Chiamare questo metodo per rispondere a un progetto aggiunto/aperto nell'ambiente host.

OnProjectNameChanged(ProjectId, String, String)

Chiamare questo metodo quando il nome di un progetto viene modificato nell'ambiente host.

OnProjectReferenceAdded(ProjectId, ProjectReference)

Chiamare questo metodo quando un riferimento al progetto viene aggiunto a un progetto nell'ambiente host.

OnProjectReferenceRemoved(ProjectId, ProjectReference)

Chiamare questo metodo quando un riferimento al progetto viene rimosso da un progetto nell'ambiente host.

OnProjectReloaded(ProjectInfo)

Chiamare questo metodo per rispondere a un progetto ricaricato nell'ambiente host.

OnProjectRemoved(ProjectId)

Chiamare questo metodo per rispondere a un progetto da rimuovere dall'ambiente host.

OnSolutionAdded(SolutionInfo)

Chiamare questo metodo per rispondere a una soluzione aperta nell'ambiente host.

OnSolutionReloaded(SolutionInfo)

Chiamare questo metodo per rispondere a una soluzione da ricaricare nell'ambiente host.

OnSolutionRemoved()

Questo metodo viene chiamato quando la soluzione viene rimossa dall'area di lavoro.

Eseguire l'override di questo metodo se si desidera eseguire operazioni aggiuntive quando la soluzione viene rimossa. Chiamare il metodo di base alla fine del metodo. Chiamare questo metodo per rispondere a una soluzione rimossa/cancellata/chiusa nell'ambiente host.

OnWorkspaceFailed(WorkspaceDiagnostic)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

OpenAdditionalDocument(DocumentId, Boolean)

Aprire il documento aggiuntivo specificato nell'ambiente host.

OpenAnalyzerConfigDocument(DocumentId, Boolean)

Aprire il documento di configurazione dell'analizzatore specificato nell'ambiente host.

OpenDocument(DocumentId, Boolean)

Aprire il documento specificato nell'ambiente host.

RaiseDocumentActiveContextChangedEventAsync(Document)
Obsoleti.

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseDocumentActiveContextChangedEventAsync(SourceTextContainer, DocumentId, DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseDocumentClosedEventAsync(Document)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseDocumentOpenedEventAsync(Document)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseTextDocumentClosedEventAsync(TextDocument)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseTextDocumentOpenedEventAsync(TextDocument)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RaiseWorkspaceChangedEventAsync(WorkspaceChangeKind, Solution, Solution, ProjectId, DocumentId)

Un'area di lavoro consente di accedere a un set attivo di progetti e documenti di codice sorgente e ai relativi alberi della sintassi, compilazioni e modelli semantici associati. Un'area di lavoro ha una soluzione corrente che rappresenta uno snapshot non modificabile dei progetti e dei documenti. Questa proprietà può cambiare nel tempo man mano che l'area di lavoro viene aggiornata dalle interazioni in tempo reale nell'ambiente o tramite chiamata al metodo dell'area di TryApplyChanges(Solution) lavoro.

RegisterText(SourceTextContainer)

Registrare una corrispondenza tra un contenitore di testo e un'area di lavoro.

ScheduleTask(Action, String)

Esegue un'azione come attività in background, come parte di una coda sequenziale di attività.

ScheduleTask<T>(Func<T>, String)

Eseguire una funzione come attività in background, come parte di una coda sequenziale di attività.

SetCurrentSolution(Solution)

Imposta l'oggetto CurrentSolution di questa area di lavoro. Questo metodo non genera un WorkspaceChanged evento.

TryApplyChanges(Solution)

Applicare di nuovo le modifiche apportate a una soluzione all'area di lavoro.

La soluzione specificata deve essere quella originata da questa area di lavoro. In caso contrario, o l'area di lavoro è stata aggiornata dopo che la soluzione è stata ottenuta dall'area di lavoro, questo metodo restituisce false. Questo metodo genererà comunque se la soluzione contiene modifiche non supportate in base al CanApplyChange(ApplyChangesKind) metodo .

TryGetWorkspace(SourceTextContainer, Workspace)

Ottiene l'area di lavoro associata al contenitore di testo specifico.

UnregisterText(SourceTextContainer)

Annullare la registrazione di una corrispondenza tra un contenitore di testo e un'area di lavoro.

UpdateReferencesAfterAdd()

Aggiornamenti tutti i progetti per fare riferimento correttamente ad altri progetti come riferimenti al progetto anziché ai riferimenti ai metadati.

Eventi

DocumentActiveContextChanged

Evento generato quando il documento di contesto attivo associato a un buffer viene modificato.

DocumentClosed

Evento generato quando un oggetto Document viene chiuso nell'editor.

DocumentOpened

Evento generato quando un Document oggetto viene aperto nell'editor.

TextDocumentClosed

Evento generato quando un TextDocument oggetto viene chiuso nell'editor.

TextDocumentOpened

Evento generato quando un TextDocument oggetto viene aperto nell'editor.

WorkspaceChanged

Evento generato ogni volta che viene modificata la soluzione corrente.

WorkspaceFailed

Evento generato ogni volta che l'area di lavoro o parte del modello di soluzione non riesce ad accedere a un file o a un'altra risorsa esterna.

Si applica a