Freigeben über


Solution Klasse

Definition

Stellt eine Reihe von Projekten und deren Quellcodedokumente dar.

public ref class Solution
public class Solution
type Solution = class
Public Class Solution
Vererbung
Solution

Eigenschaften

AnalyzerReferences

Analyzerverweise, die der Lösung zugeordnet sind.

FilePath

Der Pfad zur Projektmappendatei oder NULL, wenn keine Lösungsdatei vorhanden ist.

Id

Die ID der Lösung. Mehrere Lösungsinstanzen verwenden möglicherweise dieselbe ID.

Options

Gibt die Optionen zurück, die auf diese Lösung angewendet werden sollen. Dies entspricht dem Zeitpunkt, zu dem Options die Solution instance erstellt wurde.

ProjectIds

Eine Liste aller IDs für alle Projekte, die in der Projektmappe enthalten sind.

Projects

Eine Liste aller projekte, die in der Projektmappe enthalten sind.

Services

Pro Lösungsdienste, die von der Hostumgebung bereitgestellt werden. Verwenden Sie dies anstelle von Services , wenn möglich.

Version

Die Lösungsversion. Dies entspricht der Version der Lösungsdatei.

Workspace

Der Arbeitsbereich, dem diese Lösung zugeordnet ist.

Methoden

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

Erstellt eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wird, um ein neues zusätzliches Dokument einzuschließen, instance durch seinen Namen und Text definiert ist.

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

Erstellt eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wird, um ein neues zusätzliches Dokument einzuschließen, instance durch seinen Namen und Text definiert ist.

AddAdditionalDocument(DocumentInfo)

Stellt eine Reihe von Projekten und deren Quellcodedokumente dar.

AddAdditionalDocuments(ImmutableArray<DocumentInfo>)

Stellt eine Reihe von Projekten und deren Quellcodedokumente dar.

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

Erstellt eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wurde, um ein neues Analysekonfigurationsdokument einzuschließen, instance durch seinen Namen und Text definiert sind.

AddAnalyzerConfigDocuments(ImmutableArray<DocumentInfo>)

Erstellt eine neue Projektmappen-instance, die ein neues Compilerkonfigurationsdokument wie eine EDITORCONFIG-Datei enthält.

AddAnalyzerReference(AnalyzerReference)

Erstellen Sie eine neue Lösung instance aktualisiert, um die angegebene Analysereferenz einzuschließen.

AddAnalyzerReference(ProjectId, AnalyzerReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den angegebenen Analyseverweis einzuschließen.

AddAnalyzerReferences(IEnumerable<AnalyzerReference>)

Erstellen Sie eine neue Lösung instance aktualisiert, um die angegebenen Analysereferenzen einzuschließen.

AddAnalyzerReferences(ProjectId, IEnumerable<AnalyzerReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebenen Analysereferenzen einzuschließen.

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

Erstellt eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wird, um ein neues Dokument einzuschließen, instance durch seinen Namen und Text definiert ist.

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

Erstellt eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wird, um ein neues Dokument einzuschließen, instance durch seinen Namen und Text definiert ist.

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

Erstellt eine neue Projektmappe instance mit dem entsprechenden Projekt, das aktualisiert wurde, um ein neues Dokument einzuschließen instance, das durch den Namen und den Stamm SyntaxNodedefiniert ist.

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

Erstellt eine neue Projektmappe instance, wobei das Projekt aktualisiert wurde, um ein neues Dokument mit den angegebenen Argumenten einzuschließen.

AddDocument(DocumentInfo)

Erstellen Sie eine neue Projektmappe instance, wobei das entsprechende Projekt aktualisiert wurde, um ein neues Dokument einzuschließen, das durch die Dokumentinformationen definiert ist.

AddDocuments(ImmutableArray<DocumentInfo>)

Erstellen Sie eine neue Solution instance, wobei die entsprechenden Projects aktualisiert werden, um die von angegebenen Dokumente einzuschließendocumentInfos.

AddMetadataReference(ProjectId, MetadataReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den angegebenen Metadatenverweis einzuschließen.

AddMetadataReferences(ProjectId, IEnumerable<MetadataReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebenen Metadatenverweise einzuschließen.

AddProject(ProjectId, String, String, String)

Erstellt eine neue Projektmappe instance, die ein Projekt mit der angegebenen Sprache und den angegebenen Namen enthält.

AddProject(ProjectInfo)

Erstellen Sie eine neue Projektmappe instance, die ein Projekt mit den angegebenen Projektinformationen enthält.

AddProject(String, String, String)

Erstellt eine neue Projektmappe instance, die ein Projekt mit der angegebenen Sprache und den angegebenen Namen enthält. Gibt das neue Projekt zurück.

AddProjectReference(ProjectId, ProjectReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den angegebenen Projektverweis einzuschließen.

AddProjectReferences(ProjectId, IEnumerable<ProjectReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebenen Projektverweise einzuschließen.

ContainsAdditionalDocument(DocumentId)

True, wenn die Projektmappe das zusätzliche Dokument in einem ihrer Projekte enthält.

ContainsAnalyzerConfigDocument(DocumentId)

True, wenn die Projektmappe das Analysekonfigurationsdokument in einem ihrer Projekte enthält.

ContainsDocument(DocumentId)

True, wenn die Projektmappe das Dokument in einem ihrer Projekte enthält.

ContainsProject(ProjectId)

True, wenn die Projektmappe ein Projekt mit der angegebenen Projekt-ID enthält.

GetAdditionalDocument(DocumentId)

Ruft das zusätzliche Dokument in dieser Projektmappe mit der angegebenen Dokument-ID ab.

GetAnalyzerConfigDocument(DocumentId)

Ruft das Analysekonfigurationsdokument in dieser Projektmappe mit der angegebenen Dokument-ID ab.

GetChanges(Solution)

Ruft ein -Objekt ab, das die hinzugefügten, geänderten und entfernten Projekte zwischen dieser Projektmappe und der angegebenen Projektmappe auflistet.

GetDocument(DocumentId)

Ruft das Dokument in dieser Projektmappe mit der angegebenen Dokument-ID ab.

GetDocument(SyntaxTree)

Ruft das Dokument in dieser Projektmappe mit der angegebenen Syntaxstruktur ab.

GetDocumentId(SyntaxTree)

Ruft die documentId in dieser Projektmappe mit der angegebenen Syntaxstruktur ab.

GetDocumentId(SyntaxTree, ProjectId)

Ruft die documentId in dieser Projektmappe mit der angegebenen Syntaxstruktur ab.

GetDocumentIdsWithFilePath(String)

Ruft den Satz von DocumentIds in diesem Solution mit einem ab FilePath , der dem angegebenen Dateipfad entspricht.

GetIsolatedSolution()
Veraltet.

Früher wurde eine Kopie der Lösung zurückgegeben, die vom Ursprünglichen isoliert wurde, sodass sie den berechneten Zustand nicht gemeinsam nutzen. Sie tut jetzt nichts mehr.

GetLatestProjectVersion()

Die Version des zuletzt geänderten Projekts.

GetProject(IAssemblySymbol, CancellationToken)

Ruft die ab, die Project einem Assemblysymbol zugeordnet ist.

GetProject(ProjectId)

Ruft das Projekt in dieser Projektmappe mit der angegebenen Projekt-ID ab.

Wenn die ID keine ID eines Projekts ist, das Teil dieser Projektmappe ist, gibt die Methode NULL zurück.

GetProjectDependencyGraph()

Ruft eine ProjectDependencyGraph ab, die die Abhängigkeiten zwischen Projekten für diese Projektmappe detailliert beschreibt.

GetSourceGeneratedDocumentAsync(DocumentId, CancellationToken)

Stellt eine Reihe von Projekten und deren Quellcodedokumente dar.

RemoveAdditionalDocument(DocumentId)

Erstellt eine neue Projektmappe instance, die das angegebene zusätzliche Dokument nicht mehr enthält.

RemoveAdditionalDocuments(ImmutableArray<DocumentId>)

Erstellt eine neue Projektmappe instance, die die angegebenen zusätzlichen Dokumente nicht mehr enthält.

RemoveAnalyzerConfigDocument(DocumentId)

Erstellt eine neue Projektmappe instance, die den angegebenen AnalyzerConfigDocumentnicht mehr enthält.

RemoveAnalyzerConfigDocuments(ImmutableArray<DocumentId>)

Erstellt eine neue Projektmappe instance, die die angegebenen AnalyzerConfigDocuments nicht mehr enthält.

RemoveAnalyzerReference(AnalyzerReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt so aktualisiert wurde, dass der angegebene Analyseverweis nicht mehr enthalten ist.

RemoveAnalyzerReference(ProjectId, AnalyzerReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt so aktualisiert wurde, dass der angegebene Analyseverweis nicht mehr enthalten ist.

RemoveDocument(DocumentId)

Erstellt eine neue Projektmappe instance, die das angegebene Dokument nicht mehr enthält.

RemoveDocuments(ImmutableArray<DocumentId>)

Erstellt eine neue Projektmappe instance, die die angegebenen Dokumente nicht mehr enthält.

RemoveMetadataReference(ProjectId, MetadataReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den angegebenen Metadatenverweis nicht mehr einzuschließen.

RemoveProject(ProjectId)

Erstellen Sie eine neue Projektmappe instance ohne das angegebene Projekt.

RemoveProjectReference(ProjectId, ProjectReference)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt so aktualisiert wurde, dass der angegebene Projektverweis nicht mehr enthalten ist.

WithAdditionalDocumentText(DocumentId, SourceText, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei das angegebene zusätzliche Dokument aktualisiert wird, damit der Text angegeben wird.

WithAdditionalDocumentText(DocumentId, TextAndVersion, PreservationMode)

Erstellt eine neue Projektmappe instance mit dem angegebenen zusätzlichen Dokument, das aktualisiert wird, um den Text und die Version anzugeben.

WithAdditionalDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

Erstellt eine neue Projektmappe instance mit dem angegebenen zusätzlichen Dokument aktualisiert, damit der Text vom Textladeprogramm bereitgestellt wird.

WithAnalyzerConfigDocumentText(DocumentId, SourceText, PreservationMode)

Erstellt eine neue Lösung instance, wobei das angegebene Analysekonfigurationsdokument aktualisiert wird, damit der Text vom Textladeprogramm bereitgestellt wird.

WithAnalyzerConfigDocumentText(DocumentId, TextAndVersion, PreservationMode)

Erstellt eine neue Lösung instance, wobei das angegebene Analysekonfigurationsdokument aktualisiert wurde, um den Text und die Version anzugeben.

WithAnalyzerConfigDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

Erstellt eine neue Lösung instance, wobei das angegebene Analysekonfigurationsdokument aktualisiert wird, damit der Text vom Textladeprogramm bereitgestellt wird.

WithAnalyzerReferences(IEnumerable<AnalyzerReference>)

Erstellt eine neue Lösung instance mit den angegebenen Analysereferenzen.

WithDocumentFilePath(DocumentId, String)

Erstellt eine neue Projektmappe instance mit dem angegebenen Dokument aktualisiert, um den angegebenen Dateipfad zu erhalten.

WithDocumentFolders(DocumentId, IEnumerable<String>)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wurde, um in der Sequenz der logischen Ordner enthalten zu sein.

WithDocumentName(DocumentId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wurde, um den neuen Namen zu erhalten.

WithDocumentSourceCodeKind(DocumentId, SourceCodeKind)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wird, um die Quellcodeart anzugeben.

WithDocumentSyntaxRoot(DocumentId, SyntaxNode, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wird, um eine Syntaxstruktur zu erhalten, die vom angegebenen Syntaxknoten stammet.

WithDocumentText(DocumentId, SourceText, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wird, damit der Text angegeben wird.

WithDocumentText(DocumentId, TextAndVersion, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wird, um den Text und die Version anzugeben.

WithDocumentText(IEnumerable<DocumentId>, SourceText, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei alle angegebenen Dokumente aktualisiert werden, um denselben angegebenen Text zu erhalten.

WithDocumentTextLoader(DocumentId, TextLoader, PreservationMode)

Erstellt eine neue Projektmappe instance, wobei das angegebene Dokument aktualisiert wird, damit der Text vom Textladeprogramm bereitgestellt wird.

WithOptions(OptionSet)

Erstellt eine neue Projektmappe instance mit dem angegebenen options.

WithProjectAnalyzerReferences(ProjectId, IEnumerable<AnalyzerReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um nur die angegebenen Analyseverweise einzuschließen.

WithProjectAssemblyName(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den neuen Assemblynamen zu erhalten.

WithProjectCompilationOptions(ProjectId, CompilationOptions)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebenen Kompilierungsoptionen zu erhalten.

WithProjectCompilationOutputInfo(ProjectId, CompilationOutputInfo)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wird, um den Compilerausgabedateipfad zu erhalten.

WithProjectDefaultNamespace(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den Standardnamespace zu erhalten.

WithProjectDocumentsOrder(ProjectId, ImmutableList<DocumentId>)

Erstellt eine neue Projektmappe instance mit den Projektdokumenten in der Reihenfolge nach den angegebenen Dokument-IDs. Die angegebenen Dokument-IDs müssen mit dem identisch sein, was bereits im Projekt vorhanden ist. Das Hinzufügen oder Entfernen ist nicht zulässig.

WithProjectFilePath(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wird, um den Projektdateipfad zu erhalten.

WithProjectMetadataReferences(ProjectId, IEnumerable<MetadataReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um nur die angegebenen Metadatenverweise einzuschließen.

WithProjectName(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um den Namen zu erhalten.

WithProjectOutputFilePath(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wird, um den Ausgabedateipfad zu erhalten.

WithProjectOutputRefFilePath(ProjectId, String)

Erstellt eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wird, um den Ausgabedateipfad der Referenzassembly zu erhalten.

WithProjectParseOptions(ProjectId, ParseOptions)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebenen Analyseoptionen zu erhalten.

WithProjectReferences(ProjectId, IEnumerable<ProjectReference>)

Erstellen Sie eine neue Projektmappe instance, wobei das angegebene Projekt aktualisiert wurde, um die angegebene Liste der Projektverweise zu enthalten.

Gilt für: