MetadataReaderProvider.GetMetadataReader Method

Definition

C#
public System.Reflection.Metadata.MetadataReader GetMetadataReader(System.Reflection.Metadata.MetadataReaderOptions options = System.Reflection.Metadata.MetadataReaderOptions.Default, System.Reflection.Metadata.MetadataStringDecoder? utf8Decoder = default);
C#
public System.Reflection.Metadata.MetadataReader GetMetadataReader(System.Reflection.Metadata.MetadataReaderOptions options = System.Reflection.Metadata.MetadataReaderOptions.ApplyWindowsRuntimeProjections, System.Reflection.Metadata.MetadataStringDecoder? utf8Decoder = default);
C#
public System.Reflection.Metadata.MetadataReader GetMetadataReader(System.Reflection.Metadata.MetadataReaderOptions options = System.Reflection.Metadata.MetadataReaderOptions.ApplyWindowsRuntimeProjections, System.Reflection.Metadata.MetadataStringDecoder utf8Decoder = default);
C#
public System.Reflection.Metadata.MetadataReader GetMetadataReader(System.Reflection.Metadata.MetadataReaderOptions options = System.Reflection.Metadata.MetadataReaderOptions.Default, System.Reflection.Metadata.MetadataStringDecoder utf8Decoder = default);

Parameters

options
MetadataReaderOptions

A bitwise combination of the enumeration values that represent the configuration when reading the metadata.

utf8Decoder
MetadataStringDecoder

The encoding to use.

Returns

A MetadataReader instance.

Exceptions

The encoding of utf8Decoder is not UTF8Encoding.

The current platform is big-endian.

IO error while reading from the underlying stream.

Provider has been disposed.

Remarks

The caller must keep the MetadataReaderProvider undisposed throughout the lifetime of the metadata reader.

If this method is called multiple times, each call with arguments equal to the arguments passed to the previous successful call returns the same instance of MetadataReader as the previous call.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8 (package-provided), 8, 9 (package-provided), 9, 10 (package-provided), 10
.NET Standard 2.0 (package-provided)