Compartir a través de


SqlDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32) Método

Definición

Lee un flujo de bytes del desplazamiento de columna especificado en el búfer como una matriz, comenzando en el desplazamiento de búfer dado.

public:
 override long GetBytes(int i, long dataIndex, cli::array <System::Byte> ^ buffer, int bufferIndex, int length);
public override long GetBytes (int i, long dataIndex, byte[] buffer, int bufferIndex, int length);
override this.GetBytes : int * int64 * byte[] * int * int -> int64
Public Overrides Function GetBytes (i As Integer, dataIndex As Long, buffer As Byte(), bufferIndex As Integer, length As Integer) As Long

Parámetros

i
Int32

Índice de la columna de base cero.

dataIndex
Int64

Índice dentro del campo a partir del cual debe comenzar la operación de lectura.

buffer
Byte[]

Búfer en el que se va a leer la secuencia de bytes.

bufferIndex
Int32

Índice del buffer donde va a comenzar la operación de escritura.

length
Int32

Longitud máxima que se puede copiar en el búfer.

Devoluciones

El número real de bytes que se leen.

Implementaciones

Comentarios

GetBytes devuelve el número de bytes disponibles en el campo . La mayoría de las veces es la longitud exacta del campo. Sin embargo, el número devuelto puede ser menor que la longitud verdadera del campo si GetBytes ya se ha usado para obtener bytes del campo. Esto puede ser el caso, por ejemplo, si está SqlDataReader leyendo una estructura de datos grande en un búfer. Para obtener más información, vea la SequentialAccess configuración de CommandBehavior.

Si pasa un búfer que es null, GetBytes devuelve la longitud de todo el campo en bytes, no el tamaño restante en función del parámetro de desplazamiento del búfer.

No se realizan conversiones; Por lo tanto, los datos recuperados ya deben ser una matriz de bytes.

Se aplica a