次の方法で共有


HttpRequest.GetBufferlessInputStream メソッド

定義

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクトを取得します。

オーバーロード

GetBufferlessInputStream()

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクトを取得します。

GetBufferlessInputStream(Boolean)

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクトを取得し、オプションで MaxRequestLength プロパティに設定した要求の期間の制限を無効にします。

GetBufferlessInputStream()

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクトを取得します。

public:
 System::IO::Stream ^ GetBufferlessInputStream();
public System.IO.Stream GetBufferlessInputStream ();
member this.GetBufferlessInputStream : unit -> System.IO.Stream
Public Function GetBufferlessInputStream () As Stream

戻り値

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクト。

例外

要求のエンティティ本体は、既に読み込まれ、解析されています。 エンティティ本体を読み込んで解析するプロパティの例は次のとおりです。

この例外を回避するには、ReadEntityBodyMode メソッドを最初に呼び出します。 この例外は、エンティティ本体の読み取り中にクライアントが切断された場合にもスローされます。

注釈

このメソッドは、 プロパティを使用する代わりに使用 InputStream できます。 プロパティは InputStream 、要求全体が受信されるまで待機してから、オブジェクトを Stream 返します。 これに対し、 メソッドは GetBufferlessInputStream オブジェクトを Stream 直ちに返します。 メソッドを使用すると、本文の完全な内容を受信する前にエンティティ本体の処理を開始できます。

エンティティ本体 (または要求したオブジェクトと同じ量を受信した場合) は、 メソッドなどの Read メソッドを呼び出すことによって、このメソッドによって返されるオブジェクトを使用してストリームを読み取る場合にのみ返されます。 メソッドのパラメーターを Read 使用して、読み取るエンティティ本文の量を指定します。

このメソッドから ASP.NET によって返されるオブジェクトは Stream 、同期読み取りメソッドと非同期読み取りメソッドの両方をサポートします。 オブジェクトはStream、 メソッドと EndRead メソッドの両方をBeginRead実装します。 非同期メソッドを使用すると、要求エンティティをチャンクで非同期的に読み取り、ASP.NET 非同期読み取りループの各イテレーションの間に現在のスレッドを解放できます。

このメソッドは、要求が大きなファイルをアップロードしていて、アップロードが完了する前にファイルの内容へのアクセスを開始する場合に役立ちます。 ただし、このメソッドは、エンティティ本体のすべての処理を引き継ぐシナリオでのみ使用する必要があります。 これは、.aspx ページが実行される時点までにエンティティ本体が既に読み取られたため、.aspx ページからこのメソッドを使用できないことを意味します。

こちらもご覧ください

適用対象

GetBufferlessInputStream(Boolean)

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクトを取得し、オプションで MaxRequestLength プロパティに設定した要求の期間の制限を無効にします。

public:
 System::IO::Stream ^ GetBufferlessInputStream(bool disableMaxRequestLength);
public System.IO.Stream GetBufferlessInputStream (bool disableMaxRequestLength);
member this.GetBufferlessInputStream : bool -> System.IO.Stream
Public Function GetBufferlessInputStream (disableMaxRequestLength As Boolean) As Stream

パラメーター

disableMaxRequestLength
Boolean

要求の期間の制限を無効にする場合は true。それ以外の場合は false

戻り値

受信 HTTP エンティティ本体を読み取るために使用できる Stream オブジェクト。

例外

要求のエンティティ本体は、既に読み込まれ、解析されています。 エンティティ本体を読み込んで解析するプロパティの例は次のとおりです。

この例外を回避するには、ReadEntityBodyMode メソッドを最初に呼び出します。 この例外は、エンティティ本体の読み取り中にクライアントが切断された場合にもスローされます。

注釈

このメソッドの詳細については、 オーバーロードに関するページを GetBufferlessInputStream() 参照してください。

こちらもご覧ください

適用対象