SqlDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Lê um fluxo de bytes do deslocamento de coluna especificado no buffer como uma matriz, que inicia no deslocamento de buffer fornecido.
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
O ordinal da coluna baseado em zero.
- dataIndex
- Int64
O índice dentro do campo no qual iniciar a operação de leitura.
- buffer
- Byte[]
O buffer no qual o fluxo de bytes deve ser lido.
- bufferIndex
- Int32
O índice dentro de buffer
no qual a operação de gravação deve ser iniciada.
- length
- Int32
O tamanho máximo a ser copiado no buffer.
Retornos
O número real de bytes lidos.
Implementações
Comentários
GetBytes retorna o número de bytes disponíveis no campo . Na maioria das vezes, esse é o comprimento exato do campo. No entanto, o número retornado poderá ser menor que o comprimento verdadeiro do campo se GetBytes
já tiver sido usado para obter bytes do campo. Esse pode ser o caso, por exemplo, se o SqlDataReader estiver lendo uma estrutura de dados grande em um buffer. Para obter mais informações, consulte a SequentialAccess
configuração para CommandBehavior.
Se você passar um buffer que seja null
, GetBytes retornará o comprimento do campo inteiro em bytes, não o tamanho restante com base no parâmetro de deslocamento do buffer.
Nenhuma conversão é executada; portanto, os dados recuperados já devem ser uma matriz de bytes.