Freigeben über


Workspace Klasse

Definition

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

public ref class Workspace abstract : IDisposable
public abstract class Workspace : IDisposable
type Workspace = class
    interface IDisposable
Public MustInherit Class Workspace
Implements IDisposable
Vererbung
Workspace
Abgeleitet
Implementiert

Konstruktoren

Workspace(HostServices, String)

Erstellt einen neuen Arbeitsbereich instance.

Eigenschaften

CanOpenDocuments

True, wenn dieser Arbeitsbereich das manuelle Öffnen und Schließen von Dokumenten unterstützt.

CurrentSolution

Die aktuelle Lösung.

Die Projektmappe ist ein unveränderliches Modell der aktuellen Gruppe von Projekten und Quelldokumenten. Sie bietet Zugriff auf Quelltext, Syntaxstrukturen und Semantik.

Diese Eigenschaft kann sich ändern, wenn der Arbeitsbereich auf Änderungen in der Umgebung reagiert oder nachdem TryApplyChanges(Solution) aufgerufen wird.

Kind

Die Art des Arbeitsbereichs. Dies ist im Allgemeinen Host der Fall, wenn er von der Hostumgebung stammt, aber möglicherweise ein anderer Name ist, der für eine bestimmte Art von Arbeitsbereich verwendet wird.

Options
Veraltet.

Ruft die Gruppe aller globalen Optionen und Optionsab oder legt diese fest. Setter erzwingt außerdem Updates, CurrentSolution um die aktualisiert Optionszu haben.

PartialSemanticsEnabled

Überschreiben Sie diese Eigenschaft, wenn der Arbeitsbereich partielle Semantik für Dokumente unterstützt.

Services

Dienstanbieter durch den Host für die Implementierung von Arbeitsbereichsfeatures.

Methoden

AdjustReloadedProject(Project, Project)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

AdjustReloadedSolution(Solution, Solution)

Diese Methode wird während onSolutionReload aufgerufen. Überschreiben Sie diese Methode, wenn Sie die neu geladene Lösung bearbeiten möchten.

ApplyAdditionalDocumentAdded(DocumentInfo, SourceText)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt ein neues zusätzliches Dokument hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen zusätzlicher Dokumente zu implementieren.

ApplyAdditionalDocumentRemoved(DocumentId)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um ein zusätzliches Dokument aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen zusätzlicher Dokumente zu implementieren.

ApplyAdditionalDocumentTextChanged(DocumentId, SourceText)

Diese Methode wird aufgerufen, um den Text eines zusätzlichen Dokuments zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern von zusätzlichem Dokumenttext zu implementieren.

ApplyAnalyzerConfigDocumentAdded(DocumentInfo, SourceText)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt ein neues Analysekonfigurationsdokument hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen von Analysekonfigurationsdokumenten zu implementieren.

ApplyAnalyzerConfigDocumentRemoved(DocumentId)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um ein Analysekonfigurationsdokument aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Analysekonfigurationsdokumenten zu implementieren.

ApplyAnalyzerConfigDocumentTextChanged(DocumentId, SourceText)

Diese Methode wird aufgerufen, um den Text eines Analysekonfigurationsdokuments zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern des Analysekonfigurationsdokumenttexts zu implementieren.

ApplyAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt einen Analyseverweis hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen von Analysereferenzen zu implementieren.

ApplyAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einen Analyseanalyseverweis aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Analysereferenzen zu implementieren.

ApplyCompilationOptionsChanged(ProjectId, CompilationOptions)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um die Kompilierungsoptionen zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern der Kompilierungsoptionen zu implementieren.

ApplyDocumentAdded(DocumentInfo, SourceText)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt ein neues Dokument hinzuzufügen.

Überschreiben Sie diese Methode, um die Funktion zum Hinzufügen von Dokumenten zu implementieren.

ApplyDocumentInfoChanged(DocumentId, DocumentInfo)

Diese Methode wird aufgerufen, um die Informationen eines Dokuments zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern der Dokumentinformationen zu implementieren.

ApplyDocumentRemoved(DocumentId)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um ein Dokument aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Dokumenten zu implementieren.

ApplyDocumentTextChanged(DocumentId, SourceText)

Diese Methode wird aufgerufen, um den Text eines Dokuments zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern von Dokumenttext zu implementieren.

ApplyMetadataReferenceAdded(ProjectId, MetadataReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt einen Metadatenverweis hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen von Metadatenverweisen zu implementieren.

ApplyMetadataReferenceRemoved(ProjectId, MetadataReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einen Metadatenverweis aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Metadatenverweisen zu implementieren.

ApplyParseOptionsChanged(ProjectId, ParseOptions)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um die Analyseoptionen zu ändern.

Überschreiben Sie diese Methode, um die Möglichkeit zum Ändern von Analyseoptionen zu implementieren.

ApplyProjectAdded(ProjectInfo)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um der aktuellen Projektmappe ein Projekt hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen von Projekten zu implementieren.

ApplyProjectChanges(ProjectChanges)

Diese Methode wird während TryApplyChanges(Solution) für jedes Projekt aufgerufen, das hinzugefügt, entfernt oder geändert wurde.

Überschreiben Sie diese Methode, wenn Sie ändern möchten, wie Projektänderungen angewendet werden.

ApplyProjectReferenceAdded(ProjectId, ProjectReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einem Projekt einen Projektverweis hinzuzufügen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Hinzufügen von Projektverweisen zu implementieren.

ApplyProjectReferenceRemoved(ProjectId, ProjectReference)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um einen Projektverweis aus einem Projekt zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Projektverweisen zu implementieren.

ApplyProjectRemoved(ProjectId)

Diese Methode wird während TryApplyChanges(Solution) aufgerufen, um ein Projekt aus der aktuellen Projektmappe zu entfernen.

Überschreiben Sie diese Methode, um die Möglichkeit zum Entfernen von Projekten zu implementieren.

CanApplyChange(ApplyChangesKind)

Bestimmt, ob die bestimmte Art der Änderung von der TryApplyChanges(Solution) -Methode unterstützt wird.

CanApplyCompilationOptionChange(CompilationOptions, CompilationOptions, Project)

Wird während eines Aufrufs von aufgerufen, TryApplyChanges(Solution) um zu bestimmen, ob eine bestimmte Änderung an CompilationOptions zulässig ist.

CanApplyParseOptionChange(ParseOptions, ParseOptions, Project)

Wird während eines Aufrufs von aufgerufen, TryApplyChanges(Solution) um zu bestimmen, ob eine bestimmte Änderung an ParseOptions zulässig ist.

CheckAdditionalDocumentIsInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn ein zusätzliches Dokument nicht Teil der aktuellen Projektmappe ist.

CheckAdditionalDocumentIsNotInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn ein zusätzliches Dokument bereits Teil der aktuellen Lösung ist.

CheckAnalyzerConfigDocumentIsInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn eine Analysekonfiguration nicht Teil der aktuellen Lösung ist.

CheckAnalyzerConfigDocumentIsNotInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn das Analysekonfigurationsdokument bereits Teil der aktuellen Lösung ist.

CheckCanOpenDocuments()

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

CheckDocumentCanBeRemoved(DocumentId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

CheckDocumentIsClosed(DocumentId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

CheckDocumentIsInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn ein Dokument nicht Teil der aktuellen Projektmappe ist.

CheckDocumentIsNotInCurrentSolution(DocumentId)

Löst eine Ausnahme aus, wenn ein Dokument bereits Teil der aktuellen Projektmappe ist.

CheckDocumentIsOpen(DocumentId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

CheckProjectCanBeRemoved(ProjectId)

Derzeit können Projekte immer entfernt werden, aber diese Methode ist weiterhin vorhanden, weil sie geschützt ist und wir keine Personen unterbrechen möchten, die von Workspace abgeleitet und entweder aufgerufen oder überschrieben haben.

CheckProjectDoesNotContainOpenDocuments(ProjectId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

CheckProjectDoesNotHaveAnalyzerReference(ProjectId, AnalyzerReference)

Löst eine Ausnahme aus, wenn ein Projekt bereits über einen bestimmten Analysereferenzverweis verfügt.

CheckProjectDoesNotHaveMetadataReference(ProjectId, MetadataReference)

Löst eine Ausnahme aus, wenn ein Projekt bereits über einen bestimmten Metadatenverweis verfügt.

CheckProjectDoesNotHaveProjectReference(ProjectId, ProjectReference)

Löst eine Ausnahme aus, wenn ein Projekt bereits über einen bestimmten Projektverweis verfügt.

CheckProjectDoesNotHaveTransitiveProjectReference(ProjectId, ProjectId)

Löst eine Ausnahme aus, wenn das Projekt über einen transitiven Verweis auf ein anderes Projekt verfügt.

CheckProjectHasAnalyzerReference(ProjectId, AnalyzerReference)

Löst eine Ausnahme aus, wenn ein Projekt nicht über einen bestimmten Analysereferenzverweis verfügt.

CheckProjectHasMetadataReference(ProjectId, MetadataReference)

Löst eine Ausnahme aus, wenn ein Projekt keinen bestimmten Metadatenverweis aufweist.

CheckProjectHasProjectReference(ProjectId, ProjectReference)

Löst eine Ausnahme aus, wenn ein Projekt nicht über einen bestimmten Projektverweis verfügt.

CheckProjectIsInCurrentSolution(ProjectId)

Löst eine Ausnahme aus, wenn das Projekt nicht Teil der aktuellen Projektmappe ist.

CheckProjectIsNotInCurrentSolution(ProjectId)

Löst eine Ausnahme aus, wenn das Projekt Teil der aktuellen Projektmappe ist.

CheckSolutionIsEmpty()

Löst eine Ausnahme aus, wenn die Lösung nicht leer ist.

ClearDocumentData(DocumentId)

Diese Methode wird aufgerufen, um zu löschen, dass ein einzelnes Dokument entfernt wird.

Überschreiben Sie diese Methode, wenn Sie beim Entfernen eines Dokuments zusätzliche Arbeit leisten möchten. Rufen Sie die Basismethode am Ende der Methode auf.

ClearOpenDocument(DocumentId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

ClearOpenDocument(DocumentId, Boolean)
Veraltet.

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

ClearProjectData(ProjectId)

Diese Methode wird aufgerufen, wenn ein einzelnes Projekt entfernt wird.

Überschreiben Sie diese Methode, wenn Sie beim Entfernen eines Projekts zusätzliche Arbeit leisten möchten. Rufen Sie die Basismethode am Ende der Methode auf.

ClearSolution()

Löscht alle Lösungsdaten und leert die aktuelle Lösung.

ClearSolutionData()

Diese Methode wird aufgerufen, wenn eine Lösung gelöscht wird.

Überschreiben Sie diese Methode, wenn Sie zusätzliche Aufgaben ausführen möchten, wenn eine Lösung gelöscht wird. Rufen Sie die Basismethode am Ende der Methode auf.

Diese Methode wird aufgerufen, während eine Sperre gehalten wird. Seien Sie beim Überschreiben sehr vorsichtig, da unnapropriate Arbeit zu Deadlocks führen kann.

CloseAdditionalDocument(DocumentId)

Schließen Sie das angegebene zusätzliche Dokument in der Hostumgebung.

CloseAnalyzerConfigDocument(DocumentId)

Schließen Sie das angegebene Analysekonfigurationsdokument in der Hostumgebung.

CloseDocument(DocumentId)

Schließen Sie das angegebene Dokument in der Hostumgebung.

CreateSolution(SolutionId)

Erstellen Sie eine neue leere Lösung instance, die diesem Arbeitsbereich zugeordnet ist.

CreateSolution(SolutionInfo)

Erstellen Sie eine neue leere Lösung instance, die diesem Arbeitsbereich zugeordnet ist.

Dispose()

Entsorgt diesen Arbeitsbereich. Der Arbeitsbereich kann länger verwendet werden, nachdem er verworfen wurde.

Dispose(Boolean)

Rufen Sie diese Methode auf, wenn der Arbeitsbereich verworfen wird.

Überschreiben Sie diese Methode, um zusätzliche Arbeit zu erledigen, wenn der Arbeitsbereich verworfen wird. Rufen Sie diese Methode am Ende Der Methode auf.

GetAdditionalDocumentName(DocumentId)

Ruft den Namen ab, der für ein zusätzliches Dokument in einer Fehlermeldung verwendet werden soll.

GetAnalyzerConfigDocumentName(DocumentId)

Ruft den Namen ab, der für ein Analysedokument in einer Fehlermeldung verwendet werden soll.

GetDocumentIdInCurrentContext(SourceTextContainer)

Ruft die ID für das Dokument ab, das dem angegebenen Textcontainer im aktuellen Kontext zugeordnet ist. Dokumente werden normalerweise einem Textcontainer zugeordnet, wenn die Dokumente geöffnet werden.

GetDocumentName(DocumentId)

Ruft den Namen ab, der für ein Dokument in einer Fehlermeldung verwendet werden soll.

GetOpenDocumentIds(ProjectId)

Ruft eine Liste der aktuell geöffneten Dokumente ab.

GetProjectName(ProjectId)

Ruft den Namen ab, der für ein Projekt in einer Fehlermeldung verwendet werden soll.

GetRelatedDocumentIds(SourceTextContainer)

Ruft die IDs für Dokumente im CurrentSolution Momentaufnahme ab, die dem angegebenen containerzugeordnet sind. Dokumente werden normalerweise einem Textcontainer zugeordnet, wenn die Dokumente geöffnet werden.

GetWorkspaceRegistration(SourceTextContainer)

Gibt einen WorkspaceRegistration für einen bestimmten Textcontainer zurück.

IsDocumentOpen(DocumentId)

Bestimmt, ob das Dokument derzeit in der Hostumgebung geöffnet ist.

OnAdditionalDocumentAdded(DocumentInfo)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein zusätzliches Dokument hinzugefügt wird.

OnAdditionalDocumentClosed(DocumentId, TextLoader)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnAdditionalDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnAdditionalDocumentRemoved(DocumentId)

Rufen Sie diese Methode auf, wenn ein zusätzliches Dokument aus einem Projekt in der Hostumgebung entfernt wird.

OnAdditionalDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Rufen Sie diese Methode auf, wenn der Text eines zusätzlichen Dokuments in der Hostumgebung aktualisiert wird.

OnAdditionalDocumentTextLoaderChanged(DocumentId, TextLoader)

Rufen Sie diese Methode auf, wenn der Text eines zusätzlichen Dokuments auf dem Datenträger geändert wird.

OnAnalyzerConfigDocumentAdded(DocumentInfo)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein Analysekonfigurationsdokument hinzugefügt wird.

OnAnalyzerConfigDocumentClosed(DocumentId, TextLoader)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnAnalyzerConfigDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnAnalyzerConfigDocumentRemoved(DocumentId)

Rufen Sie diese Methode auf, wenn ein Analysekonfigurationsdokument aus einem Projekt in der Hostumgebung entfernt wird.

OnAnalyzerConfigDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Rufen Sie diese Methode auf, wenn der Text eines Analysekonfigurationsdokuments in der Hostumgebung aktualisiert wird.

OnAnalyzerConfigDocumentTextLoaderChanged(DocumentId, TextLoader)

Rufen Sie diese Methode auf, wenn der Text eines Analysekonfigurationsdokuments auf dem Datenträger geändert wird.

OnAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein Analyseverweis hinzugefügt wird.

OnAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Rufen Sie diese Methode auf, wenn ein Analyseverweis aus einem Projekt in der Hostumgebung entfernt wird.

OnAssemblyNameChanged(ProjectId, String)

Rufen Sie diese Methode auf, wenn der Assemblyname eines Projekts in der Hostumgebung geändert wird.

OnCompilationOptionsChanged(ProjectId, CompilationOptions)

Rufen Sie diese Methode auf, wenn die Kompilierungsoptionen eines Projekts in der Hostumgebung geändert werden.

OnDocumentAdded(DocumentInfo)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein Dokument hinzugefügt wird.

OnDocumentClosed(DocumentId, TextLoader, Boolean)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnDocumentClosing(DocumentId)

Überschreiben Sie diese Methode, um sofort zu handeln, wenn ein Dokument geschlossen wird, anstatt darauf zu warten, dass das entsprechende Arbeitsbereichsänderungsereignis asynchron ausgelöst wird.

OnDocumentContextUpdated(DocumentId)

Rufen Sie diese Methode auf, wenn ein Dokument zum aktiven Kontext in der Hostumgebung gemacht wurde.

OnDocumentInfoChanged(DocumentId, DocumentInfo)

Rufen Sie diese Methode auf, wenn sich die Dokumentinformationen ändern, z. B. name, Ordner oder Dateipfad.

OnDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OnDocumentReloaded(DocumentInfo)

Rufen Sie diese Methode auf, wenn ein Dokument in der Hostumgebung neu geladen wird.

OnDocumentRemoved(DocumentId)

Rufen Sie diese Methode auf, wenn ein Dokument aus einem Projekt in der Hostumgebung entfernt wird.

OnDocumentsAdded(ImmutableArray<DocumentInfo>)

Rufen Sie diese Methode auf, wenn einem oder mehreren Projekten in der Hostumgebung mehrere Dokumente hinzugefügt werden.

OnDocumentSourceCodeKindChanged(DocumentId, SourceCodeKind)

Rufen Sie diese Methode auf, wenn sich der SourceCodeKind eines Dokuments in der Hostumgebung ändert.

OnDocumentTextChanged(Document)

Überschreiben Sie diese Methode, um sofort zu handeln, wenn sich der Text eines Dokuments geändert hat, anstatt darauf zu warten, dass das entsprechende Arbeitsbereichsänderungsereignis asynchron ausgelöst wird.

OnDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Rufen Sie diese Methode auf, wenn der Text eines Dokuments in der Hostumgebung aktualisiert wird.

OnDocumentTextLoaderChanged(DocumentId, TextLoader)

Rufen Sie diese Methode auf, wenn der Text eines Dokuments auf dem Datenträger geändert wird.

OnMetadataReferenceAdded(ProjectId, MetadataReference)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein Metadatenverweis hinzugefügt wird.

OnMetadataReferenceRemoved(ProjectId, MetadataReference)

Rufen Sie diese Methode auf, wenn ein Metadatenverweis aus einem Projekt in der Hostumgebung entfernt wird.

OnOutputFilePathChanged(ProjectId, String)

Rufen Sie diese Methode auf, wenn der Ausgabedateipfad eines Projekts in der Hostumgebung geändert wird.

OnOutputRefFilePathChanged(ProjectId, String)

Rufen Sie diese Methode auf, wenn der Pfad der Ausgabe-Ref-Datei eines Projekts in der Hostumgebung geändert wird.

OnParseOptionsChanged(ProjectId, ParseOptions)

Rufen Sie diese Methode auf, wenn die Analyseoptionen eines Projekts in der Hostumgebung geändert werden.

OnProjectAdded(ProjectInfo)

Rufen Sie diese Methode auf, um auf ein Projekt zu reagieren, das in der Hostumgebung hinzugefügt/geöffnet wird.

OnProjectNameChanged(ProjectId, String, String)

Rufen Sie diese Methode auf, wenn der Name eines Projekts in der Hostumgebung geändert wird.

OnProjectReferenceAdded(ProjectId, ProjectReference)

Rufen Sie diese Methode auf, wenn einem Projekt in der Hostumgebung ein Projektverweis hinzugefügt wird.

OnProjectReferenceRemoved(ProjectId, ProjectReference)

Rufen Sie diese Methode auf, wenn ein Projektverweis aus einem Projekt in der Hostumgebung entfernt wird.

OnProjectReloaded(ProjectInfo)

Rufen Sie diese Methode auf, um auf ein Projekt zu reagieren, das in der Hostumgebung neu geladen wird.

OnProjectRemoved(ProjectId)

Rufen Sie diese Methode auf, um auf ein Projekt zu reagieren, das aus der Hostumgebung entfernt wird.

OnSolutionAdded(SolutionInfo)

Rufen Sie diese Methode auf, um auf eine Lösung zu reagieren, die in der Hostumgebung geöffnet wird.

OnSolutionReloaded(SolutionInfo)

Rufen Sie diese Methode auf, um auf eine Lösung zu reagieren, die in der Hostumgebung neu geladen wird.

OnSolutionRemoved()

Diese Methode wird aufgerufen, wenn die Projektmappe aus dem Arbeitsbereich entfernt wird.

Überschreiben Sie diese Methode, wenn Sie beim Entfernen der Lösung zusätzliche Arbeit erledigen möchten. Rufen Sie die Basismethode am Ende Der Methode auf. Rufen Sie diese Methode auf, um auf eine Lösung zu reagieren, die in der Hostumgebung entfernt/gelöscht/geschlossen wird.

OnWorkspaceFailed(WorkspaceDiagnostic)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

OpenAdditionalDocument(DocumentId, Boolean)

Öffnen Sie das angegebene zusätzliche Dokument in der Hostumgebung.

OpenAnalyzerConfigDocument(DocumentId, Boolean)

Öffnen Sie das angegebene Analysekonfigurationsdokument in der Hostumgebung.

OpenDocument(DocumentId, Boolean)

Öffnen Sie das angegebene Dokument in der Hostumgebung.

RaiseDocumentActiveContextChangedEventAsync(Document)
Veraltet.

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RaiseDocumentActiveContextChangedEventAsync(SourceTextContainer, DocumentId, DocumentId)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RaiseDocumentClosedEventAsync(Document)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RaiseDocumentOpenedEventAsync(Document)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RaiseTextDocumentClosedEventAsync(TextDocument)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RaiseTextDocumentOpenedEventAsync(TextDocument)

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

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

Ein Arbeitsbereich bietet Zugriff auf einen aktiven Satz von Quellcodeprojekten und -dokumenten und den zugehörigen Syntaxstrukturen, Kompilierungen und semantischen Modellen. Ein Arbeitsbereich verfügt über eine aktuelle Projektmappe, die eine unveränderliche Momentaufnahme der Projekte und Dokumente darstellt. Diese Eigenschaft kann sich im Laufe der Zeit ändern, wenn der Arbeitsbereich entweder von Liveinteraktionen in der Umgebung oder über einen Aufruf der Methode des Arbeitsbereichs TryApplyChanges(Solution) aktualisiert wird.

RegisterText(SourceTextContainer)

Registrieren sie eine Korrespondenz zwischen einem Textcontainer und einem Arbeitsbereich.

ScheduleTask(Action, String)

Führt eine Aktion als Hintergrundaufgabe als Teil einer sequenziellen Warteschlange von Aufgaben aus.

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

Führen Sie eine Funktion als Hintergrundaufgabe als Teil einer sequenziellen Warteschlange von Aufgaben aus.

SetCurrentSolution(Solution)

Legt den CurrentSolution dieses Arbeitsbereichs fest. Diese Methode löst kein Ereignis aus WorkspaceChanged .

TryApplyChanges(Solution)

Wenden Sie Änderungen, die an einer Lösung vorgenommen wurden, wieder auf den Arbeitsbereich an.

Die angegebene Lösung muss aus diesem Arbeitsbereich stammen. Wenn dies nicht der Fall ist oder der Arbeitsbereich aktualisiert wurde, seit die Lösung aus dem Arbeitsbereich abgerufen wurde, gibt diese Methode false zurück. Diese Methode wird weiterhin ausgelöst, wenn die Lösung Änderungen enthält, die gemäß der CanApplyChange(ApplyChangesKind) Methode nicht unterstützt werden.

TryGetWorkspace(SourceTextContainer, Workspace)

Ruft den Arbeitsbereich ab, der dem spezifischen Textcontainer zugeordnet ist.

UnregisterText(SourceTextContainer)

Heben Sie die Registrierung einer Korrespondenz zwischen einem Textcontainer und einem Arbeitsbereich auf.

UpdateReferencesAfterAdd()

Updates alle Projekte, um ordnungsgemäß auf andere Projekte als Projektverweise anstelle von Metadatenverweisen zu verweisen.

Ereignisse

DocumentActiveContextChanged

Ein Ereignis, das ausgelöst wird, wenn das aktive Kontextdokument, das einem Puffer zugeordnet ist, geändert wird.

DocumentClosed

Ein Ereignis, das ausgelöst wird, wenn ein Document im Editor geschlossen wird.

DocumentOpened

Ein Ereignis, das ausgelöst wird, wenn ein Document im Editor geöffnet wird.

TextDocumentClosed

Ein Ereignis, das ausgelöst wird, wenn eines TextDocument im Editor geschlossen wird.

TextDocumentOpened

Ein Ereignis, das ausgelöst wird, wenn im Editor eines TextDocument geöffnet wird.

WorkspaceChanged

Ein Ereignis, das ausgelöst wird, wenn die aktuelle Lösung geändert wird.

WorkspaceFailed

Ein Ereignis, das ausgelöst wird, wenn der Arbeitsbereich oder ein Teil des Projektmappenmodells nicht auf eine Datei oder eine andere externe Ressource zugreifen kann.

Gilt für: