What is the most efficient way to read bytes (8-16 K) from SQL Server using SqlDataReader. I seem to know two ways:
byte[] buffer = new byte[4096]; MemoryStream stream = new MemoryStream(); long l, dataOffset = 0; while ((l = reader.GetBytes(columnIndex, dataOffset, buffer, 0, buffer.Length)) > 0) { stream.Write(buffer, 0, buffer.Length); dataOffset += l; }
and
reader.GetSqlBinary(columnIndex).Value
Data Type - IMAGE
source share