MetadataReaderProvider.FromPortablePdbStream(Stream, MetadataStreamOptions, Int32) Metodo

Definizione

Crea un provider per un flusso delle dimensioni specificate con inizio nella posizione corrente.Creates a provider for a stream of the specified size beginning at its current position.

public static System.Reflection.Metadata.MetadataReaderProvider FromPortablePdbStream (System.IO.Stream stream, System.Reflection.Metadata.MetadataStreamOptions options = System.Reflection.Metadata.MetadataStreamOptions.Default, int size = 0);
static member FromPortablePdbStream : System.IO.Stream * System.Reflection.Metadata.MetadataStreamOptions * int -> System.Reflection.Metadata.MetadataReaderProvider

Parametri

stream
Stream

Flusso.The stream.

options
MetadataStreamOptions

Opzioni che specificano la modalità di lettura delle sezioni dell'immagine dal flusso.Options specifying how sections of the image are read from the stream.

size
Int32

Dimensioni del BLOB di metadati nel flusso.Size of the metadata blob in the stream. Se non è specificato, si presuppone che il BLOB di metadati si estenda fino alla fine del flusso.If not specified, the metadata blob is assumed to span to the end of the stream.

Restituisce

Eccezioni

stream è null.stream is null.

stream non supporta le operazioni read (lettura) e seek (ricerca).stream doesn't support read and seek operations.

Le dimensioni sono negative o si estendono oltre la fine del flusso.Size is negative or extends past the end of the stream.

Commenti

A meno che non sia specificato MetadataStreamOptions.LeaveOpen, la proprietà del flusso viene trasferita al MetadataReaderProvider al completamento della convalida degli argomenti.Unless MetadataStreamOptions.LeaveOpen is specified, ownership of the stream is transferred to the MetadataReaderProvider upon successful argument validation. Verrà eliminato dal MetadataReaderProvidere il chiamante non deve modificarlo.It will be disposed by the MetadataReaderProvider, and the caller must not manipulate it.

A meno che non sia specificato MetadataStreamOptions.PrefetchMetadata, nessun dato viene letto dal flusso durante la costruzione del MetadataReaderProvider.Unless MetadataStreamOptions.PrefetchMetadata is specified, no data is read from the stream during the construction of the MetadataReaderProvider. Il flusso, inoltre, non deve essere modificato dal chiamante mentre il MetadataReaderProvider è attivo e non è disposto.Furthermore, the stream must not be manipulated by caller while the MetadataReaderProvider is alive and undisposed.

Se MetadataStreamOptions.PrefetchMetadata, l'MetadataReaderProvider avrà letto tutti i dati richiesti durante la costruzione.If MetadataStreamOptions.PrefetchMetadata, the MetadataReaderProvider will have read all of the data requested during construction. Di conseguenza, se viene specificato anche MetadataStreamOptions.LeaveOpen, il chiamante mantiene la proprietà completa del flusso ed è certo che non verrà modificato dall'MetadataReaderProvider dopo la costruzione.As such, if MetadataStreamOptions.LeaveOpen is also specified, the caller retains full ownership of the stream and is assured that it will not be manipulated by the MetadataReaderProvider after construction.

Si applica a