Guardar Imagen en base de datos. (c#)

Iniciado por Hartigan, 13 Junio 2010, 20:25 PM

0 Miembros y 6 Visitantes están viendo este tema.

raul338

Esta bien a menos que sepas leer una imagen en hexadecimal a simple vista :silbar:

yo te digo que lo pongas en un picturebox ysi se ve la imagen, es porque el error esta en otro lado. Sino se ve, esporque pusiste mal la imagen :P

Hartigan

Cita de: raul338 en 14 Junio 2010, 15:50 PM
Esta bien a menos que sepas leer una imagen en hexadecimal a simple vista :silbar:

yo te digo que lo pongas en un picturebox ysi se ve la imagen, es porque el error esta en otro lado. Sino se ve, esporque pusiste mal la imagen :P

Esque no me carga, porque da error.

Cuando yo al principio selecciono la imágen en un picture box para guardarla luego en la base de datos lo hace bien. Luego al leerla y sacarla a otro picturebox ya no funciona bien. Y la imágen parece que la coge bien de la base de datos... pero vete tu a saber...

[D4N93R]

Acá te dejo esto que acabo de hacer, espero te funcione:

Código C#:
http://pastebin.com/Vp1XLfit

Código del component del formulario:
Código (csharp) [Seleccionar]

        private System.Windows.Forms.PictureBox pictureBox1;
        private System.Windows.Forms.Button button1;
        private System.Windows.Forms.ListView listView1;
        private System.Windows.Forms.Button button2;
        private System.Windows.Forms.TextBox m_imageTitle;
        private System.Windows.Forms.Label label1;


Base de datos
Una tabla, llamada Image, con las siguientes columnas:

- ID identiy decimal
- Title varchar
- ImageData de tipo Image.


PD: disculpa que no tiene comentarios, y los controles tienen el nombre por defecto, pero no tengo mucho tiempo ahora. Si tienes una duda no dudes en consultar..

Saludos

Hartigan

Cita de: D4N93R en 14 Junio 2010, 17:57 PM
Acá te dejo esto que acabo de hacer, espero te funcione:

Código C#:
http://pastebin.com/Vp1XLfit

Código del component del formulario:
Código (csharp) [Seleccionar]

        private System.Windows.Forms.PictureBox pictureBox1;
        private System.Windows.Forms.Button button1;
        private System.Windows.Forms.ListView listView1;
        private System.Windows.Forms.Button button2;
        private System.Windows.Forms.TextBox m_imageTitle;
        private System.Windows.Forms.Label label1;


Base de datos
Una tabla, llamada Image, con las siguientes columnas:

- ID identiy decimal
- Title varchar
- ImageData de tipo Image.


PD: disculpa que no tiene comentarios, y los controles tienen el nombre por defecto, pero no tengo mucho tiempo ahora. Si tienes una duda no dudes en consultar..

Saludos

Muchas gracias voy a mirarlo a ver.

una pregunta. Es necesario guardar un nombre para imagen?? porque yo solamente guardo el campo imagen y veo que tu y más gente creais tres campos... esque yo tengo una tabla con todos los datos del contacto (nombre, apellidos... ) y uno de ellos es un campo (imagen image). Con eso debería servir no???.-

Salu2. y gracias,

[D4N93R]

Si Claro, es esencialmente lo mismo. También podrías usar otra tabla para almacenar las imagenes, de modo de que cada usuario pueda tener más, no se , es solo una idea, así no solamente tienen una sola sino que pueden tener dos, o más.

El nombre de la imagen, no es el nombre sino un titulo, que es el que sale en el listbox, es como la equivalencia al nombre de la persona en tu base de datos.

Saludos

Hartigan

Lool, no me funciona tu programa. xD

Hartigan

ya me funciona tu programa D4N93R, a ver si consigo aplicarlo al mio, pero veo un inconveniente que yo no tengo un listview de esos, y entonces como puedo usar el foreach????

Hartigan

Bueno no hay manera. He seguido tropecientos tutoriales y esque hay algo que no va bien. En la parte en la que se hace la conversión de bytes al tipo image, toma el valor null, no se porqué y entonces no le asigna nada... Creo que voy a desistir y a probar el método de almacenar solo la dirección local de la imágen.

[D4N93R]

Cómo que no tienes un listview? claro que si, arrástralo de la barra de herramientas. y le pones el mismo nombre que en mi código.

Vamos vamos que si puedes..

Hartigan

#29
Cita de: D4N93R en 15 Junio 2010, 15:00 PM
Cómo que no tienes un listview? claro que si, arrástralo de la barra de herramientas. y le pones el mismo nombre que en mi código.

Vamos vamos que si puedes..

si tener lo tengo, pero en mi programa no tengo intención de añadirlo. xDD Probaré aunque sea por ver si funciona. xD