Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
GetTextReader Method

SqlDataReader::GetTextReader Method

.NET Framework 4.6 and 4.5

Retrieves Char, NChar, NText, NVarChar, text, varChar, and Variant data types as a TextReader.

Namespace:  System.Data.SqlClient
Assembly:  System.Data (in System.Data.dll)

virtual TextReader^ GetTextReader(
	int i
) override


Type: System::Int32

The column to be retrieved.

Return Value

Type: System.IO::TextReader
The returned object.


The connection drops or is closed during the data retrieval.

The SqlDataReader is closed during the data retrieval.

There is no data ready to be read (for example, the first Read hasn't been called, or returned false).

Tried to read a previously-read column in sequential mode.

There was an asynchronous operation in progress. This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.


Trying to read a column that does not exist.


The returned type was not one of the types below:

  • char

  • nchar

  • ntext

  • nvarchar

  • text

  • varchar

SqlException exceptions raised from TextReader are thrown as IOException exceptions; check the inner exception for the SqlException.

Null values will be returned as an empty (zero bytes) TextReader.

GetChars will raise an InvalidOperationException exception when used on an object returned by GetTextReader when SequentialAccess is in effect.

When the connection property ContextConnection=true, GetTextReader only supports synchronous data retrieval for both sequential (SequentialAccess) and non-sequential (Default) access.

For more information, see SqlClient Streaming Support.

.NET Framework

Supported in: 4.6, 4.5
© 2015 Microsoft