HttpRequest.GetBufferlessInputStream Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает объект Stream, который можно использовать для чтения основного текста входящего НТТР-запроса.
Перегрузки
GetBufferlessInputStream() |
Возвращает объект Stream, который можно использовать для чтения основного текста входящего НТТР-запроса. |
GetBufferlessInputStream(Boolean) |
Получает объект Stream, который можно использовать для чтения тела сущности входящего HTTP-запроса, дополнительно отменяя задаваемое в свойстве MaxRequestLength ограничение на длину запроса. |
GetBufferlessInputStream()
Возвращает объект Stream, который можно использовать для чтения основного текста входящего НТТР-запроса.
public:
System::IO::Stream ^ GetBufferlessInputStream();
public System.IO.Stream GetBufferlessInputStream ();
member this.GetBufferlessInputStream : unit -> System.IO.Stream
Public Function GetBufferlessInputStream () As Stream
Возвращаемое значение
Объект Stream, который можно использовать для чтения тела сущности входящего НТТР-запроса.
Исключения
Тело сущности запроса уже загружено и проанализировано. Примеры свойств, которые приводят к тому, что тело сущности загружается и синтаксически анализируется:
Во избежание этого исключения сначала вызовите метод ReadEntityBodyMode. Это исключение также вызывается, если клиент отключается во время чтения тела сущности.
Комментарии
Этот метод предоставляет альтернативу использованию InputStream свойства. Свойство InputStream ожидает, пока не будет получен весь запрос, прежде чем он вернет Stream объект. Напротив, GetBufferlessInputStream метод немедленно возвращает Stream объект. Метод можно использовать для начала обработки тела сущности до получения полного содержимого тела.
Тело сущности (или его количество по запросу и получено) возвращается только при использовании объекта, возвращаемого этим методом для чтения потока, путем вызова таких методов, как Read метод. Параметры метода используются Read для указания объема считываемого текста сущности.
Объект, Stream возвращаемый ASP.NET из этого метода, поддерживает синхронные и асинхронные методы чтения. Объект Stream реализует как методы, так BeginRead и EndRead методы. Асинхронные методы позволяют асинхронно считывать сущность запроса в блоках, а ASP.NET освобождает текущий поток между каждой итерацией асинхронного цикла чтения.
Этот метод может быть полезен, если запрос отправляет большой файл и вы хотите начать доступ к содержимому файла до завершения отправки. Однако этот метод следует использовать только для сценариев, в которых требуется взять на себя всю обработку тела сущности. Это означает, что этот метод нельзя использовать на ASPX-странице, так как к моменту запуска ASPX-страницы тело сущности уже было прочитано.
См. также раздел
Применяется к
GetBufferlessInputStream(Boolean)
Получает объект Stream, который можно использовать для чтения тела сущности входящего HTTP-запроса, дополнительно отменяя задаваемое в свойстве 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, который можно использовать для чтения тела сущности входящего НТТР-запроса.
Исключения
Тело сущности запроса уже загружено и проанализировано. Примеры свойств, которые приводят к тому, что тело сущности загружается и синтаксически анализируется:
– свойство Form;
– свойство Files;
– свойство InputStream;
– метод GetBufferedInputStream().
Во избежание этого исключения сначала вызовите метод ReadEntityBodyMode. Это исключение также вызывается, если клиент отключается во время чтения тела сущности.
Комментарии
Дополнительные сведения об этом методе см. в разделе перегрузки GetBufferlessInputStream() .