Cargar campo imagen

08/07/2004 - 18:31 por Alberto | Informe spam
Me gustaría saber cómo puedo cargar un campo de una base de datos SQL Server
de tipo "image" para mostrarla en una aplicación C#.

Muchas gracias.

Preguntas similare

Leer las respuestas

#1 Alejandro Perez
08/07/2004 - 20:37 | Informe spam
Saludos Alberto! Aqui el codigo, espero te sirva:

private void MostrarFoto()
{
//Abres la conexion a la BD
SqlConnection nwindConn = new SqlConnection("Data
Source=localhost;Integrated Security=SSPI;Initial
Catalog=Northwind;");

//Realizas la consulta que te retorna, entre
otras cosas, las fotos
SqlCommand addEmp = new SqlCommand("SELECT photo
FROM employees WHERE employeeid!", nwindConn);

//Llenas un datareader
nwindConn.Open();
SqlDataReader objReader = addEmp.ExecuteReader();

//Creas un objeto binaryWriter para almacenar la
foto
FileStream fs = new FileStream
("C:\\temp\\foto.bmp", FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);

//Declaras algunas variables necesarias para
recorrer el arreglo
//de bytes
int bufferSize = 100;
byte[] outbyte = new byte[bufferSize];
long retval;
long startIndex = 0;
objReader.Read();

//Recorres el arreglo de bytes (la foto de la BD)
y lo
//escribes en tu binaryWriter
retval = objReader.GetBytes
(0,startIndex,outbyte,0,bufferSize);
while (retval == bufferSize)
{
bw.Write(outbyte);
bw.Flush();

startIndex += bufferSize;
retval = objReader.GetBytes(0,
startIndex, outbyte, 0, bufferSize);
}

//Cierras los objetos
bw.Write(outbyte, 0, (int)retval - 1);
bw.Flush();
bw.Close();
fs.Close();
nwindConn.Close();

//Creas un objeto bitmap, en el constructor le
pasas la ruta
//de tu imagen ya creada por el binaryWriter. Y
luego al PictureBox
Bitmap objbit = new Bitmap("C:\\temp\\foto.bmp");
pictureBox1.Image=objbit;

}


Se despide,
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela


Me gustaría saber cómo puedo cargar un campo de una base


de datos SQL Server
de tipo "image" para mostrarla en una aplicación C#.

Muchas gracias.


.

Respuesta Responder a este mensaje
#2 Octavio Hernandez
09/07/2004 - 01:19 | Informe spam
Este doc de soporte indica cómo leer y escribir campos de imagen en la base
de datos desde/hacia un fichero:

http://support.microsoft.com/defaul...-US;309158

El ejemplo de Alejandro va más allá, pues indica cómo mostrar la imagen en
pantalla...

Un consejo: ¡cuidado con el consumo de memoria de la aplicación! Hay que
"disposear" (perdón por el anglicismo) las imágenes que van dejando de ser
necesarias...

Slds - Octavio

"Alberto" escribió en el mensaje
news:%
Me gustaría saber cómo puedo cargar un campo de una base de datos SQL


Server
de tipo "image" para mostrarla en una aplicación C#.

Muchas gracias.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida