Freigeben über


MetadataReference.CreateFromFile Methode

Definition

Erstellt einen Verweis auf ein Assembly- oder eigenständiges Modul, das in einer Datei gespeichert ist. Liest den Inhalt der Datei in den Arbeitsspeicher ein.

public static Microsoft.CodeAnalysis.PortableExecutableReference CreateFromFile (string path, Microsoft.CodeAnalysis.MetadataReferenceProperties properties = default, Microsoft.CodeAnalysis.DocumentationProvider documentation = default);
public static Microsoft.CodeAnalysis.PortableExecutableReference CreateFromFile (string path, Microsoft.CodeAnalysis.MetadataReferenceProperties properties = default, Microsoft.CodeAnalysis.DocumentationProvider? documentation = default);
static member CreateFromFile : string * Microsoft.CodeAnalysis.MetadataReferenceProperties * Microsoft.CodeAnalysis.DocumentationProvider -> Microsoft.CodeAnalysis.PortableExecutableReference
Public Shared Function CreateFromFile (path As String, Optional properties As MetadataReferenceProperties = Nothing, Optional documentation As DocumentationProvider = Nothing) As PortableExecutableReference

Parameter

path
String

Pfad zur Assemblydatei.

properties
MetadataReferenceProperties

Referenzeigenschaften (externe Aliase, Typeinbettung, MetadataImageKind).

documentation
DocumentationProvider

Stellt die XML-Dokumentation für Symbole bereit, die in der Referenz gefunden werden.

Gibt zurück

Ausnahmen

path ist NULL.

path ist ungültig.

Fehler beim Lesen der Datei.

Hinweise

Leistungsaspekte:

Es wird empfohlen, beim Erstellen mehrerer Verweise auf dieselbe Datei mehrere Verweise oder API zu verwenden CreateFromFile(String)CreateFromFile(String) . Das Erneute Verwenden des Metadata Objekts ermöglicht die Freigabe von Daten über diese Verweise hinweg.

Die Methode liest den gesamten Inhalt der Datei eifrig in systemeigene Heap vor. Der systemeigene Speicherblock wird freigegeben, wenn der resultierende Verweis nicht mehr erreichbar ist und GC es sammelt. Um den Speicherbedarf des Verweises zu verringern und/oder die Lebensdauer deterministisch CreateFromFile(String) zu verwalten, um ein IDisposable Metadatenobjekt zu erstellen und GetReference(DocumentationProvider, ImmutableArray<String>, Boolean, String, String) einen Verweis darauf zu erhalten.

Gilt für: