Estoy tratando de publicar datos de imágenes almacenados en un campo VAR (V) (MAX) en la base de datos utilizando ASP.Net. En este momento, el código está llenando una tabla de datos, luego sacando la matriz de bytes del DataRow y empujando la matriz de bytes en la respuesta. Me pregunto si hay una manera de transmitir más o menos los datos del servidor SQL a la respuesta sin tener que desplazarlos por estas enormes matrices de bytes (dado que las imágenes son grandes, causan OutOfMemoryExceptions). ¿Hay una clase/mecanismo para eso?Transmisión de datos VARBINARIOS desde SQL Server en C#
El código actual se ve más o menos así:
DataTable table = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter(commandText, connectionString);
adapter.Fill(table);
DataRow row = table.Rows[0];
byte[] imageData = row[0] as byte[];
if(imageData != null)
{
Response.Clear();
Response.BinaryWrite(imageData);
Response.End();
}
Gracias de antemano - cualquier ayuda se agradece.
¿Ha intentado utilizar directamente un SqlDataReader? –