Поделиться через


Workspace Класс

Определение

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

public ref class Workspace abstract : IDisposable
public abstract class Workspace : IDisposable
type Workspace = class
    interface IDisposable
Public MustInherit Class Workspace
Implements IDisposable
Наследование
Workspace
Производный
Реализации

Конструкторы

Workspace(HostServices, String)

Создает новый экземпляр рабочей области.

Свойства

CanOpenDocuments

Значение true, если эта рабочая область поддерживает открытие и закрытие документов вручную.

CurrentSolution

Текущее решение.

Решение представляет собой неизменяемую модель текущего набора проектов и исходных документов. Он предоставляет доступ к исходному тексту, деревьям синтаксиса и семантике.

Это свойство может изменяться по мере того, как рабочая область реагирует на изменения в среде или после TryApplyChanges(Solution) вызова метода .

Kind

Тип рабочей области. Обычно Host это происходит из среды узла, но может быть любым другим именем, используемым для определенного типа рабочей области.

Options
Устаревшие..

Возвращает или задает набор всех глобальных параметров и Options. Метод задания также принудительно обновляет , CurrentSolution чтобы обновить Options.

PartialSemanticsEnabled

Переопределите это свойство, если рабочая область поддерживает частичную семантику для документов.

Services

Поставщик служб по узлу для реализации функций рабочей области.

Методы

AdjustReloadedProject(Project, Project)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

AdjustReloadedSolution(Solution, Solution)

Этот метод вызывается во время OnSolutionReload. Переопределите этот метод, если вы хотите управлять перезагруженным решением.

ApplyAdditionalDocumentAdded(DocumentInfo, SourceText)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления нового дополнительного документа в проект.

Переопределите этот метод, чтобы реализовать возможность добавления дополнительных документов.

ApplyAdditionalDocumentRemoved(DocumentId)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления дополнительного документа из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления дополнительных документов.

ApplyAdditionalDocumentTextChanged(DocumentId, SourceText)

Этот метод вызывается для изменения текста дополнительного документа.

Переопределите этот метод, чтобы реализовать возможность изменения дополнительного текста документа.

ApplyAnalyzerConfigDocumentAdded(DocumentInfo, SourceText)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления нового документа конфигурации анализатора в проект.

Переопределите этот метод, чтобы реализовать возможность добавления документов конфигурации анализатора.

ApplyAnalyzerConfigDocumentRemoved(DocumentId)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления документа конфигурации анализатора из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления документов конфигурации анализатора.

ApplyAnalyzerConfigDocumentTextChanged(DocumentId, SourceText)

Этот метод вызывается для изменения текста документа конфигурации анализатора.

Переопределите этот метод, чтобы реализовать возможность изменения текста документа конфигурации анализатора.

ApplyAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления ссылки анализатора в проект.

Переопределите этот метод, чтобы реализовать возможность добавления ссылок на анализатор.

ApplyAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления ссылки анализатора из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления ссылок на анализатор.

ApplyCompilationOptionsChanged(ProjectId, CompilationOptions)

Этот метод вызывается во время TryApplyChanges(Solution) для изменения параметров компиляции.

Переопределите этот метод, чтобы реализовать возможность изменения параметров компиляции.

ApplyDocumentAdded(DocumentInfo, SourceText)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления нового документа в проект.

Переопределите этот метод, чтобы реализовать возможность добавления документов.

ApplyDocumentInfoChanged(DocumentId, DocumentInfo)

Этот метод вызывается для изменения сведений о документе.

Переопределите этот метод, чтобы реализовать возможность изменения сведений о документе.

ApplyDocumentRemoved(DocumentId)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления документа из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления документов.

ApplyDocumentTextChanged(DocumentId, SourceText)

Этот метод вызывается для изменения текста документа.

Переопределите этот метод, чтобы реализовать возможность изменения текста документа.

ApplyMetadataReferenceAdded(ProjectId, MetadataReference)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления ссылки на метаданные в проект.

Переопределите этот метод, чтобы реализовать возможность добавления ссылок на метаданные.

ApplyMetadataReferenceRemoved(ProjectId, MetadataReference)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления ссылки на метаданные из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления ссылок на метаданные.

ApplyParseOptionsChanged(ProjectId, ParseOptions)

Этот метод вызывается во время TryApplyChanges(Solution) для изменения параметров синтаксического анализа.

Переопределите этот метод, чтобы реализовать возможность изменения параметров синтаксического анализа.

ApplyProjectAdded(ProjectInfo)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления проекта в текущее решение.

Переопределите этот метод, чтобы реализовать возможность добавления проектов.

ApplyProjectChanges(ProjectChanges)

Этот метод вызывается во время TryApplyChanges(Solution) для каждого проекта, который был добавлен, удален или изменен.

Переопределите этот метод, если вы хотите изменить способ применения изменений проекта.

ApplyProjectReferenceAdded(ProjectId, ProjectReference)

Этот метод вызывается во время TryApplyChanges(Solution) для добавления ссылки на проект.

Переопределите этот метод, чтобы реализовать возможность добавления ссылок на проект.

ApplyProjectReferenceRemoved(ProjectId, ProjectReference)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления ссылки на проект из проекта.

Переопределите этот метод, чтобы реализовать возможность удаления ссылок на проекты.

ApplyProjectRemoved(ProjectId)

Этот метод вызывается во время TryApplyChanges(Solution) для удаления проекта из текущего решения.

Переопределите этот метод, чтобы реализовать возможность удаления проектов.

CanApplyChange(ApplyChangesKind)

Определяет, поддерживается ли определенный тип изменения методом TryApplyChanges(Solution) .

CanApplyCompilationOptionChange(CompilationOptions, CompilationOptions, Project)

Вызывается во время вызова , TryApplyChanges(Solution) чтобы определить, разрешено ли конкретное изменение CompilationOptions .

CanApplyParseOptionChange(ParseOptions, ParseOptions, Project)

Вызывается во время вызова , TryApplyChanges(Solution) чтобы определить, разрешено ли конкретное изменение ParseOptions .

CheckAdditionalDocumentIsInCurrentSolution(DocumentId)

Создает исключение, если дополнительный документ не является частью текущего решения.

CheckAdditionalDocumentIsNotInCurrentSolution(DocumentId)

Создает исключение, если дополнительный документ уже является частью текущего решения.

CheckAnalyzerConfigDocumentIsInCurrentSolution(DocumentId)

Создает исключение, если конфигурация анализатора не является частью текущего решения.

CheckAnalyzerConfigDocumentIsNotInCurrentSolution(DocumentId)

Создает исключение, если документ конфигурации анализатора уже является частью текущего решения.

CheckCanOpenDocuments()

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

CheckDocumentCanBeRemoved(DocumentId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

CheckDocumentIsClosed(DocumentId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

CheckDocumentIsInCurrentSolution(DocumentId)

Создает исключение, если документ не является частью текущего решения.

CheckDocumentIsNotInCurrentSolution(DocumentId)

Создает исключение, если документ уже является частью текущего решения.

CheckDocumentIsOpen(DocumentId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

CheckProjectCanBeRemoved(ProjectId)

В настоящее время проекты всегда можно удалить, но этот метод по-прежнему существует, так как он защищен, и мы не хотим прерывать людей, которые, возможно, были производными от Workspace и либо вызвали его, либо переопределили его.

CheckProjectDoesNotContainOpenDocuments(ProjectId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

CheckProjectDoesNotHaveAnalyzerReference(ProjectId, AnalyzerReference)

Создает исключение, если проект уже содержит определенную ссылку на анализатор.

CheckProjectDoesNotHaveMetadataReference(ProjectId, MetadataReference)

Создает исключение, если проект уже содержит определенную ссылку на метаданные.

CheckProjectDoesNotHaveProjectReference(ProjectId, ProjectReference)

Создает исключение, если проект уже содержит определенную ссылку на проект.

CheckProjectDoesNotHaveTransitiveProjectReference(ProjectId, ProjectId)

Создает исключение, если проект имеет транзитивную ссылку на другой проект.

CheckProjectHasAnalyzerReference(ProjectId, AnalyzerReference)

Создает исключение, если проект не имеет определенной ссылки на анализатор.

CheckProjectHasMetadataReference(ProjectId, MetadataReference)

Создает исключение, если проект не имеет определенной ссылки на метаданные.

CheckProjectHasProjectReference(ProjectId, ProjectReference)

Создает исключение, если проект не имеет определенной ссылки на проект.

CheckProjectIsInCurrentSolution(ProjectId)

Создает исключение, если проект не является частью текущего решения.

CheckProjectIsNotInCurrentSolution(ProjectId)

Вызывает исключение, так как проект является частью текущего решения.

CheckSolutionIsEmpty()

Вызывает исключение, если решение не пустое.

ClearDocumentData(DocumentId)

Этот метод вызывается для удаления отдельного документа.

Переопределите этот метод, если вы хотите выполнить дополнительную работу при удалении документа. Вызовите базовый метод в конце метода.

ClearOpenDocument(DocumentId, Boolean)
Устаревшие..

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

ClearOpenDocument(DocumentId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

ClearProjectData(ProjectId)

Этот метод вызывается при удалении отдельного проекта.

Переопределите этот метод, если вы хотите выполнить дополнительную работу при удалении проекта. Вызовите базовый метод в конце метода.

ClearSolution()

Очищает все данные решения и очищает текущее решение.

ClearSolutionData()

Этот метод вызывается при очистке решения.

Переопределите этот метод, если требуется выполнить дополнительную работу при очистке решения. Вызовите базовый метод в конце метода.

Этот метод вызывается во время блокировки. Будьте очень осторожны при переопределении, так как работа innapropriate может привести к взаимоблокировкам.

CloseAdditionalDocument(DocumentId)

Закройте указанный дополнительный документ в среде узла.

CloseAnalyzerConfigDocument(DocumentId)

Закройте указанный документ конфигурации анализатора в среде узла.

CloseDocument(DocumentId)

Закройте указанный документ в среде узла.

CreateSolution(SolutionId)

Создайте новый пустой экземпляр решения, связанный с этой рабочей областью.

CreateSolution(SolutionInfo)

Создайте новый пустой экземпляр решения, связанный с этой рабочей областью.

Dispose()

Удаляет эту рабочую область. После удаления рабочую область можно использовать дольше.

Dispose(Boolean)

Вызовите этот метод при удалении рабочей области.

Переопределите этот метод для выполнения дополнительных действий при удалении рабочей области. Вызовите этот метод в конце метода .

GetAdditionalDocumentName(DocumentId)

Возвращает имя, используемое для дополнительного документа в сообщении об ошибке.

GetAnalyzerConfigDocumentName(DocumentId)

Возвращает имя, используемое для документа анализатора в сообщении об ошибке.

GetDocumentIdInCurrentContext(SourceTextContainer)

Возвращает идентификатор документа, связанного с заданным текстовым контейнером в его текущем контексте. Документы обычно связываются с текстовым контейнером при открытии документов.

GetDocumentName(DocumentId)

Возвращает имя, используемое для документа в сообщении об ошибке.

GetOpenDocumentIds(ProjectId)

Возвращает список открытых в данный момент документов.

GetProjectName(ProjectId)

Возвращает имя, используемое для проекта в сообщении об ошибке.

GetRelatedDocumentIds(SourceTextContainer)

Возвращает идентификаторы для документов в CurrentSolution snapshot, связанных с данным containerобъектом . Документы обычно связываются с текстовым контейнером при открытии документов.

GetWorkspaceRegistration(SourceTextContainer)

WorkspaceRegistration Возвращает для заданного текстового контейнера.

IsDocumentOpen(DocumentId)

Определяет, открыт ли документ в среде узла.

OnAdditionalDocumentAdded(DocumentInfo)

Этот метод вызывается при добавлении дополнительного документа в проект в среде размещения.

OnAdditionalDocumentClosed(DocumentId, TextLoader)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnAdditionalDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnAdditionalDocumentRemoved(DocumentId)

Этот метод вызывается при удалении дополнительного документа из проекта в среде размещения.

OnAdditionalDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Вызовите этот метод при обновлении текста дополнительного документа в среде узла.

OnAdditionalDocumentTextLoaderChanged(DocumentId, TextLoader)

Вызовите этот метод при изменении текста дополнительного документа на диске.

OnAnalyzerConfigDocumentAdded(DocumentInfo)

Этот метод вызывается при добавлении документа конфигурации анализатора в проект в среде узла.

OnAnalyzerConfigDocumentClosed(DocumentId, TextLoader)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnAnalyzerConfigDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnAnalyzerConfigDocumentRemoved(DocumentId)

Вызовите этот метод при удалении документа конфигурации анализатора из проекта в среде узла.

OnAnalyzerConfigDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Вызовите этот метод при обновлении текста документа конфигурации анализатора в среде узла.

OnAnalyzerConfigDocumentTextLoaderChanged(DocumentId, TextLoader)

Этот метод вызывается при изменении текста документа конфигурации анализатора на диске.

OnAnalyzerReferenceAdded(ProjectId, AnalyzerReference)

Вызовите этот метод при добавлении ссылки анализатора в проект в среде узла.

OnAnalyzerReferenceRemoved(ProjectId, AnalyzerReference)

Вызовите этот метод, если ссылка на анализатор удаляется из проекта в среде узла.

OnAssemblyNameChanged(ProjectId, String)

Этот метод вызывается при изменении имени сборки проекта в среде узла.

OnCompilationOptionsChanged(ProjectId, CompilationOptions)

Вызовите этот метод при изменении параметров компиляции проекта в среде узла.

OnDocumentAdded(DocumentInfo)

Этот метод вызывается при добавлении документа в проект в среде размещения.

OnDocumentClosed(DocumentId, TextLoader, Boolean)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnDocumentClosing(DocumentId)

Переопределите этот метод, чтобы действовать немедленно при закрытии документа, а не ожидать асинхронного запуска соответствующего события изменения рабочей области.

OnDocumentContextUpdated(DocumentId)

Вызовите этот метод, если документ был сделан активным контекстом в среде узла.

OnDocumentInfoChanged(DocumentId, DocumentInfo)

Вызовите этот метод при изменении сведений о документе, таких как имя, папки или путь к файлу.

OnDocumentOpened(DocumentId, SourceTextContainer, Boolean)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OnDocumentReloaded(DocumentInfo)

Вызовите этот метод при перезагрузке документа в среде узла.

OnDocumentRemoved(DocumentId)

Этот метод вызывается при удалении документа из проекта в среде размещения.

OnDocumentsAdded(ImmutableArray<DocumentInfo>)

Этот метод вызывается при добавлении нескольких документов в один или несколько проектов в среде размещения.

OnDocumentSourceCodeKindChanged(DocumentId, SourceCodeKind)

Вызовите этот метод при изменении SourceCodeKind документа в среде узла.

OnDocumentTextChanged(Document)

Переопределите этот метод, чтобы он действовал немедленно при изменении текста документа, в отличие от ожидания асинхронного запуска соответствующего события изменения рабочей области.

OnDocumentTextChanged(DocumentId, SourceText, PreservationMode)

Этот метод вызывается при обновлении текста документа в среде узла.

OnDocumentTextLoaderChanged(DocumentId, TextLoader)

Вызовите этот метод при изменении текста документа на диске.

OnMetadataReferenceAdded(ProjectId, MetadataReference)

Этот метод вызывается при добавлении ссылки на метаданные в проект в среде узла.

OnMetadataReferenceRemoved(ProjectId, MetadataReference)

Вызовите этот метод при удалении ссылки на метаданные из проекта в среде узла.

OnOutputFilePathChanged(ProjectId, String)

Вызовите этот метод при изменении пути к выходному файлу проекта в среде узла.

OnOutputRefFilePathChanged(ProjectId, String)

Вызовите этот метод, если в среде узла изменяется выходной путь к файлу ссылки проекта.

OnParseOptionsChanged(ProjectId, ParseOptions)

Вызовите этот метод при изменении параметров синтаксического анализа проекта в среде узла.

OnProjectAdded(ProjectInfo)

Вызовите этот метод, чтобы ответить на добавление или открытие проекта в среде узла.

OnProjectNameChanged(ProjectId, String, String)

Вызовите этот метод при изменении имени проекта в среде узла.

OnProjectReferenceAdded(ProjectId, ProjectReference)

Этот метод вызывается при добавлении ссылки на проект в среде размещения.

OnProjectReferenceRemoved(ProjectId, ProjectReference)

Вызовите этот метод при удалении ссылки на проект из проекта в среде узла.

OnProjectReloaded(ProjectInfo)

Вызовите этот метод, чтобы ответить на перезагрузку проекта в среде узла.

OnProjectRemoved(ProjectId)

Вызовите этот метод, чтобы ответить на удаление проекта из среды узла.

OnSolutionAdded(SolutionInfo)

Вызовите этот метод, чтобы ответить на открытие решения в среде узла.

OnSolutionReloaded(SolutionInfo)

Вызовите этот метод, чтобы ответить на перезагрузку решения в среде узла.

OnSolutionRemoved()

Этот метод вызывается при удалении решения из рабочей области.

Переопределите этот метод, если вы хотите выполнить дополнительные действия при удалении решения. Вызовите базовый метод в конце метода. Вызовите этот метод, чтобы ответить на удаление, очистку или закрытие решения в среде узла.

OnWorkspaceFailed(WorkspaceDiagnostic)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

OpenAdditionalDocument(DocumentId, Boolean)

Откройте указанный дополнительный документ в среде узла.

OpenAnalyzerConfigDocument(DocumentId, Boolean)

Откройте указанный документ конфигурации анализатора в среде узла.

OpenDocument(DocumentId, Boolean)

Откройте указанный документ в среде узла.

RaiseDocumentActiveContextChangedEventAsync(Document)
Устаревшие..

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RaiseDocumentActiveContextChangedEventAsync(SourceTextContainer, DocumentId, DocumentId)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RaiseDocumentClosedEventAsync(Document)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RaiseDocumentOpenedEventAsync(Document)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RaiseTextDocumentClosedEventAsync(TextDocument)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RaiseTextDocumentOpenedEventAsync(TextDocument)

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

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

Рабочая область предоставляет доступ к активному набору проектов и документов исходного кода и связанным с ними деревьям синтаксиса, компиляциям и семантических моделях. Рабочая область имеет текущее решение, которое является неизменяемым snapshot проектов и документов. Это свойство может меняться со временем, так как рабочая область обновляется в результате динамического взаимодействия в среде или путем вызова метода рабочей области TryApplyChanges(Solution) .

RegisterText(SourceTextContainer)

Зарегистрируйте соответствие между текстовым контейнером и рабочей областью.

ScheduleTask(Action, String)

Выполняет действие как фоновую задачу как часть последовательной очереди задач.

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

Выполнение функции в качестве фоновой задачи в составе последовательной очереди задач.

SetCurrentSolution(Solution)

Задает для CurrentSolution этой рабочей области. Этот метод не вызывает WorkspaceChanged событие.

TryApplyChanges(Solution)

Примените изменения, внесенные в решение, обратно в рабочую область.

Указанное решение должно быть решением, которое было создано из этой рабочей области. Если это не так или рабочая область была обновлена с момента получения решения из рабочей области, этот метод возвращает значение false. Этот метод по-прежнему вызывает исключение, если решение содержит изменения, которые не поддерживаются в соответствии с методом CanApplyChange(ApplyChangesKind) .

TryGetWorkspace(SourceTextContainer, Workspace)

Возвращает рабочую область, связанную с определенным текстовым контейнером.

UnregisterText(SourceTextContainer)

Отмените регистрацию соответствия между текстовым контейнером и рабочей областью.

UpdateReferencesAfterAdd()

Обновления все проекты, чтобы правильно ссылаться на другие проекты в качестве ссылок на проекты, а не на метаданные.

События

DocumentActiveContextChanged

Событие, которое возникает при изменении активного контекстного документа, связанного с буфером.

DocumentClosed

Событие, возникающее при закрытии Document объекта в редакторе.

DocumentOpened

Событие, которое запускается при Document открытии в редакторе.

TextDocumentClosed

Событие, которое возникает при закрытии любого TextDocument объекта в редакторе.

TextDocumentOpened

Событие, которое возникает при открытии любого TextDocument из элементов в редакторе.

WorkspaceChanged

Событие, возникает при каждом изменении текущего решения.

WorkspaceFailed

Событие, возникающее всякий раз, когда рабочей области или части ее модели решения не удается получить доступ к файлу или другому внешнему ресурсу.

Применяется к