SqlDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从给定的缓冲区偏移量开始,按指定的列偏移量将字节流作为数组读入缓冲区。
public:
override long GetBytes(int i, long dataIndex, cli::array <System::Byte> ^ buffer, int bufferIndex, int length);
public:
virtual 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);
public long GetBytes (int i, long dataIndex, byte[] buffer, int bufferIndex, int length);
override this.GetBytes : int * int64 * byte[] * int * int -> int64
abstract member GetBytes : int * int64 * byte[] * int * int -> int64
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
Public Function GetBytes (i As Integer, dataIndex As Long, buffer As Byte(), bufferIndex As Integer, length As Integer) As Long
参数
- i
- Int32
从零开始的列序号。
- dataIndex
- Int64
自其开始读取操作的字段中的索引位置。
- buffer
- Byte[]
要读入字节流的缓冲区。
- bufferIndex
- Int32
buffer
中写入操作开始位置的索引。
- length
- Int32
复制到缓冲区中的最大长度。
返回
读取的实际字节数。
实现
注解
GetBytes 返回 字段中的可用字节数。 大多数情况下,这是字段的确切长度。 但是,如果 GetBytes
已使用 从字段获取字节,则返回的数字可能小于字段的真实长度。 例如,如果 SqlDataReader 正在将大型数据结构读入缓冲区,则可能会出现这种情况。 有关详细信息,请参阅 SequentialAccess
的设置 CommandBehavior。
如果传递的缓冲区为 null
, GetBytes 则返回整个字段的长度(以字节为单位),而不是基于缓冲区偏移量参数的剩余大小。
不执行任何转换;因此,检索到的数据必须已是字节数组。