Solution 类

定义

表示一组项目及其源代码文档。

public ref class Solution
public class Solution
type Solution = class
Public Class Solution
继承
Solution

属性

AnalyzerReferences

与解决方案关联的分析器引用。

FilePath

解决方案文件的路径,如果没有解决方案文件,则为 null。

Id

解决方案的 ID。 多个解决方案实例可能共享同一 ID。

Options

返回应应用于此解决方案的选项。 这等效于 Options 创建实例时 Solution

ProjectIds

解决方案包含的所有项目的所有 ID 的列表。

Projects

解决方案包含的所有项目的列表。

Services

主机环境提供的每个解决方案服务。 如果可能, Services 请使用此项,而不是 。

Version

解决方案版本。 这相当于解决方案文件的版本。

Workspace

与此解决方案关联的工作区。

方法

AddAdditionalDocument(DocumentId, String, SourceText, IEnumerable<String>, String)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和文本定义的新的附加文档实例。

AddAdditionalDocument(DocumentId, String, String, IEnumerable<String>, String)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和文本定义的新的附加文档实例。

AddAdditionalDocument(DocumentInfo)

表示一组项目及其源代码文档。

AddAdditionalDocuments(ImmutableArray<DocumentInfo>)

表示一组项目及其源代码文档。

AddAnalyzerConfigDocument(DocumentId, String, SourceText, IEnumerable<String>, String)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和文本定义的新分析器配置文档实例。

AddAnalyzerConfigDocuments(ImmutableArray<DocumentInfo>)

创建一个新的解决方案实例,其中包含新的编译器配置文档,如 .editorconfig 文件。

AddAnalyzerReference(AnalyzerReference)

创建更新为包含指定分析器引用的新解决方案实例。

AddAnalyzerReference(ProjectId, AnalyzerReference)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的分析器引用。

AddAnalyzerReferences(IEnumerable<AnalyzerReference>)

创建更新为包含指定分析器引用的新解决方案实例。

AddAnalyzerReferences(ProjectId, IEnumerable<AnalyzerReference>)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的分析器引用。

AddDocument(DocumentId, String, SourceText, IEnumerable<String>, String, Boolean)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和文本定义的新文档实例。

AddDocument(DocumentId, String, String, IEnumerable<String>, String)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和文本定义的新文档实例。

AddDocument(DocumentId, String, SyntaxNode, IEnumerable<String>, String, Boolean, PreservationMode)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由其名称和根 SyntaxNode定义的新文档实例。

AddDocument(DocumentId, String, TextLoader, IEnumerable<String>)

创建一个新的解决方案实例,其中更新了项目,以包含具有指定参数的新文档。

AddDocument(DocumentInfo)

创建一个新的解决方案实例,其中更新了相应的项目,以包含由文档信息定义的新文档实例。

AddDocuments(ImmutableArray<DocumentInfo>)

创建一个更新了相应 Project的 的新Solution实例,以包括 指定的documentInfos文档。

AddMetadataReference(ProjectId, MetadataReference)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的元数据引用。

AddMetadataReferences(ProjectId, IEnumerable<MetadataReference>)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的元数据引用。

AddProject(ProjectId, String, String, String)

创建一个新的解决方案实例,其中包含具有指定语言和名称的项目。

AddProject(ProjectInfo)

创建包含具有指定项目信息的项目的新解决方案实例。

AddProject(String, String, String)

创建一个新的解决方案实例,其中包含具有指定语言和名称的项目。 返回新项目。

AddProjectReference(ProjectId, ProjectReference)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的项目引用。

AddProjectReferences(ProjectId, IEnumerable<ProjectReference>)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的项目引用。

ContainsAdditionalDocument(DocumentId)

如果解决方案在其某个项目中包含其他文档,则其值为 True

ContainsAnalyzerConfigDocument(DocumentId)

如此 如果解决方案在其某个项目中包含分析器配置文档

ContainsDocument(DocumentId)

如果解决方案在其某个项目中包含文档,则其值为 True

ContainsProject(ProjectId)

如果解决方案包含具有指定项目 ID 的项目,则其值为 True。

GetAdditionalDocument(DocumentId)

获取此解决方案中具有指定文档 ID 的其他文档。

GetAnalyzerConfigDocument(DocumentId)

获取此解决方案中具有指定文档 ID 的分析器配置文档。

GetChanges(Solution)

获取一个 对象,该对象列出此解决方案和指定解决方案之间添加、更改和删除的项目。

GetDocument(DocumentId)

获取此解决方案中具有指定文档 ID 的文档。

GetDocument(SyntaxTree)

获取此解决方案中具有指定语法树的文档。

GetDocumentId(SyntaxTree)

获取具有指定语法树的此解决方案中的 documentId。

GetDocumentId(SyntaxTree, ProjectId)

获取具有指定语法树的此解决方案中的 documentId。

GetDocumentIdsWithFilePath(String)

获取此Solution中的 一组 DocumentId,其中包含FilePath与给定文件路径匹配的 。

GetIsolatedSolution()
已过时.

以前, 返回了与原始解决方案隔离的解决方案的副本,以便它们不共享计算状态。 它现在什么也做不了。

GetLatestProjectVersion()

最近修改的项目的版本。

GetProject(IAssemblySymbol, CancellationToken)

Project获取与程序集符号关联的 。

GetProject(ProjectId)

获取此解决方案中具有指定项目 ID 的项目。

如果 ID 不是此解决方案一部分的项目的 ID,则方法返回 null。

GetProjectDependencyGraph()

获取一个 , ProjectDependencyGraph 它详细说明此解决方案的项目之间的依赖关系。

GetSourceGeneratedDocumentAsync(DocumentId, CancellationToken)

表示一组项目及其源代码文档。

RemoveAdditionalDocument(DocumentId)

创建不再包含指定附加文档的新解决方案实例。

RemoveAdditionalDocuments(ImmutableArray<DocumentId>)

创建不再包含指定附加文档的新解决方案实例。

RemoveAnalyzerConfigDocument(DocumentId)

创建不再包含指定 AnalyzerConfigDocument的新解决方案实例。

RemoveAnalyzerConfigDocuments(ImmutableArray<DocumentId>)

创建不再包含指定 AnalyzerConfigDocument的新解决方案实例。

RemoveAnalyzerReference(AnalyzerReference)

创建一个新的解决方案实例,其中指定的项目已更新为不再包含指定的分析器引用。

RemoveAnalyzerReference(ProjectId, AnalyzerReference)

创建一个新的解决方案实例,其中指定的项目已更新为不再包含指定的分析器引用。

RemoveDocument(DocumentId)

创建不再包含指定文档的新解决方案实例。

RemoveDocuments(ImmutableArray<DocumentId>)

创建不再包含指定文档的新解决方案实例。

RemoveMetadataReference(ProjectId, MetadataReference)

创建一个新的解决方案实例,其中指定的项目已更新为不再包含指定的元数据引用。

RemoveProject(ProjectId)

在不指定项目的情况下创建新的解决方案实例。

RemoveProjectReference(ProjectId, ProjectReference)

创建一个新的解决方案实例,其中指定的项目已更新为不再包含指定的项目引用。

WithAdditionalDocumentText(DocumentId, SourceText, PreservationMode)

创建一个新的解决方案实例,并更新了指定了其他文档以指定文本。

WithAdditionalDocumentText(DocumentId, TextAndVersion, PreservationMode)

使用指定的附加文档创建一个新的解决方案实例,以指定文本和版本。

WithAdditionalDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

创建一个新的解决方案实例,其中指定的附加文档已更新为文本加载程序提供的文本。

WithAnalyzerConfigDocumentText(DocumentId, SourceText, PreservationMode)

创建一个新的解决方案实例,其中指定的分析器配置文档已更新为文本加载程序提供的文本。

WithAnalyzerConfigDocumentText(DocumentId, TextAndVersion, PreservationMode)

使用指定的分析器配置文档创建一个新的解决方案实例,以指定文本和版本。

WithAnalyzerConfigDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

创建一个新的解决方案实例,其中指定的分析器配置文档已更新为文本加载程序提供的文本。

WithAnalyzerReferences(IEnumerable<AnalyzerReference>)

使用指定的分析器引用创建新的解决方案实例。

WithDocumentFilePath(DocumentId, String)

创建一个新的解决方案实例,其中指定的文档已更新为具有指定的文件路径。

WithDocumentFolders(DocumentId, IEnumerable<String>)

创建一个新的解决方案实例,其中指定的文档已更新为包含在逻辑文件夹序列中。

WithDocumentName(DocumentId, String)

创建一个新的解决方案实例,其中指定的文档已更新为具有新名称。

WithDocumentSourceCodeKind(DocumentId, SourceCodeKind)

使用指定的文档创建一个新的解决方案实例,以指定源代码类型。

WithDocumentSyntaxRoot(DocumentId, SyntaxNode, PreservationMode)

创建一个新的解决方案实例,并更新指定的文档,使语法树由指定的语法节点根。

WithDocumentText(DocumentId, SourceText, PreservationMode)

创建一个新的解决方案实例,其中指定的文档已更新为指定文本。

WithDocumentText(DocumentId, TextAndVersion, PreservationMode)

使用指定的文档创建一个新的解决方案实例,以指定文本和版本。

WithDocumentText(IEnumerable<DocumentId>, SourceText, PreservationMode)

创建一个新的解决方案实例,其中指定的所有文档都已更新为具有相同的指定文本。

WithDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

创建一个新的解决方案实例,其中指定的文档已更新为文本加载程序提供的文本。

WithOptions(OptionSet)

使用指定的 options创建一个新的解决方案实例。

WithProjectAnalyzerReferences(ProjectId, IEnumerable<AnalyzerReference>)

创建一个新的解决方案实例,其中指定的项目已更新为仅包含指定的分析器引用。

WithProjectAssemblyName(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有新的程序集名称。

WithProjectCompilationOptions(ProjectId, CompilationOptions)

创建一个新的解决方案实例,其中指定的项目已更新为具有指定的编译选项。

WithProjectCompilationOutputInfo(ProjectId, CompilationOutputInfo)

创建一个新的解决方案实例,其中指定的项目已更新为编译器输出文件路径。

WithProjectDefaultNamespace(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有默认命名空间。

WithProjectDocumentsOrder(ProjectId, ImmutableList<DocumentId>)

使用按指定文档 ID 的顺序使用项目文档创建新的解决方案实例。 指定的文档 ID 必须与项目中已有的文档 ID 相同;不允许添加或删除。

WithProjectFilePath(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有项目文件路径。

WithProjectMetadataReferences(ProjectId, IEnumerable<MetadataReference>)

创建一个新的解决方案实例,其中指定的项目已更新为仅包含指定的元数据引用。

WithProjectName(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有 名称。

WithProjectOutputFilePath(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有输出文件路径。

WithProjectOutputRefFilePath(ProjectId, String)

创建一个新的解决方案实例,其中指定的项目已更新为具有引用程序集输出文件路径。

WithProjectParseOptions(ProjectId, ParseOptions)

创建一个新的解决方案实例,其中指定的项目已更新为具有指定的分析选项。

WithProjectReferences(ProjectId, IEnumerable<ProjectReference>)

创建一个新的解决方案实例,其中指定的项目已更新为包含指定的项目引用列表。

适用于