HttpRequest.GetBufferlessInputStream 方法

定义

获取一个 Stream 对象,该对象可用于读取传入的 HTTP 实体主体。

重载

GetBufferlessInputStream()

获取一个 Stream 对象,该对象可用于读取传入的 HTTP 实体主体。

GetBufferlessInputStream(Boolean)

获取能被用于读取正在到来的 HTTP 实体主体的 Stream 对象,同时随意地禁止设置在 MaxRequestLength 属性中的请求长度限制。

GetBufferlessInputStream()

获取一个 Stream 对象,该对象可用于读取传入的 HTTP 实体主体。

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

返回

Stream

可用于读取传入的 HTTP 实体主体的 Stream 对象。

例外

已加载和分析请求的实体主体。 导致加载和分析实体正文的属性的示例包括:

要避免此异常,请首先调用 ReadEntityBodyMode 方法。 如果客户在实体正文读取时断开连接,则也会引发此异常。

注解

此方法提供使用属性的 InputStream 替代方法。 该 InputStream 属性在返回 Stream 对象之前等待整个请求收到。 相反,该方法 GetBufferlessInputStream 会立即返回 Stream 对象。 可以使用该方法在收到正文的完整内容之前开始处理实体正文。

仅当使用此方法返回的对象通过调用方法(如 Read 该方法)来读取流时,实体正文 (或请求的实体正文中已收到) 。 使用方法的参数 Read 指定要读取的实体正文的数量。

Stream此方法中 ASP.NET 返回的对象支持同步和异步读取方法。 该Stream对象实现和BeginReadEndRead方法。 使用异步方法可以异步读取区块中的请求实体,同时 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

返回

Stream

可用于读取传入的 HTTP 实体主体的 Stream 对象。

例外

已加载和分析请求的实体主体。 导致加载和分析实体正文的属性的示例包括:

要避免此异常,请首先调用 ReadEntityBodyMode 方法。 如果客户在实体正文读取时断开连接,则也会引发此异常。

注解

有关此方法的详细信息,请参阅 GetBufferlessInputStream() 重载。

另请参阅

适用于