다음을 통해 공유


MetadataReference.CreateFromFile 메서드

정의

파일에 저장된 어셈블리 또는 독립 실행형 모듈에 대한 참조를 만듭니다. 파일의 내용을 메모리로 읽습니다.

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

매개 변수

path
String

어셈블리 파일의 경로입니다.

properties
MetadataReferenceProperties

참조 속성(extern 별칭, 형식 포함, MetadataImageKind).

documentation
DocumentationProvider

참조에 있는 기호에 대한 XML 설명서를 제공합니다.

반환

예외

path가 null입니다.

path이 잘못되었습니다.

파일을 읽는 동안 오류가 발생했습니다.

설명

성능 고려 사항:

동일한 파일에 대한 여러 참조를 만들 때 사용 CreateFromFile(String) 하거나 CreateFromFile(String) API를 사용하는 것이 좋습니다. 개체를 Metadata 다시 사용하면 이러한 참조 간에 데이터를 공유할 수 있습니다.

이 메서드는 파일의 전체 콘텐츠를 네이티브 힙으로 열심히 읽습니다. 네이티브 메모리 블록은 결과 참조에 연결할 수 없게 되고 GC가 이를 수집할 때 해제됩니다. 참조의 메모리 공간을 줄이거나 수명을 관리하려면 메타데이터 개체 GetReference(DocumentationProvider, ImmutableArray<String>, Boolean, String, String) 를 만들고 IDisposable 참조를 가져오는 데 결정적으로 사용합니다CreateFromFile(String).

적용 대상