MetadataReaderProvider.FromMetadataStream 方法

定義

從資料流目前的位置開始,為指定大小的資料流建立提供者。

public static System.Reflection.Metadata.MetadataReaderProvider FromMetadataStream (System.IO.Stream stream, System.Reflection.Metadata.MetadataStreamOptions options = System.Reflection.Metadata.MetadataStreamOptions.Default, int size = 0);
static member FromMetadataStream : System.IO.Stream * System.Reflection.Metadata.MetadataStreamOptions * int -> System.Reflection.Metadata.MetadataReaderProvider
Public Shared Function FromMetadataStream (stream As Stream, Optional options As MetadataStreamOptions = System.Reflection.Metadata.MetadataStreamOptions.Default, Optional size As Integer = 0) As MetadataReaderProvider

參數

stream
Stream

Stream 執行個體。

options
MetadataStreamOptions

指定如何從資料流讀取映像區段方法的選項。

size
Int32

資料流內中繼資料 Blob 的大小。 若未指定,則假設中繼資料 Blob 會延展到資料流結尾。

傳回

MetadataReaderProvider

新的提供者。

例外狀況

streamnull

stream 不支援讀取及搜尋作業。

大小為負數或延展超過資料流的結尾。

從資料流讀取時發生錯誤 (只有在指定了 PrefetchMetadata 時)。

備註

除非 MetadataStreamOptions.LeaveOpen 指定 ,否則資料流程的擁有權會在成功引數驗證時傳送至 MetadataReaderProvider 。 它會由 MetadataReaderProvider 處置,而且呼叫端不得操作它。

除非 MetadataStreamOptions.PrefetchMetadata 指定 ,否則在 建構 MetadataReaderProvider 期間不會從資料流程讀取任何資料。 此外,當 運作且未儲存時 MetadataReaderProvider ,呼叫端不得運算元據流。

如果 MetadataStreamOptions.PrefetchMetadata 為 ,則會 MetadataReaderProvider 讀取建構期間要求的所有資料。 因此,如果 MetadataStreamOptions.LeaveOpen 也指定 ,呼叫端會保留資料流程的完整擁有權,並確保在建構之後不會操作 MetadataReaderProvider 它。

適用於