Foros del Web » Programando para Internet » ASPX (.net) »

usar imagen con ASP .NET (C#) y SQL 2005

Estas en el tema de usar imagen con ASP .NET (C#) y SQL 2005 en el foro de ASPX (.net) en Foros del Web. Hola a todos! necesito almacenar una imagen en SQL 2005, la imagen se debe seleccionar desde un equipo local y poder subirla al servidor (como ...
  #1 (permalink)  
Antiguo 02/10/2009, 12:59
Avatar de JoSeAgUinaga  
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 9 meses
Puntos: 0
usar imagen con ASP .NET (C#) y SQL 2005

Hola a todos! necesito almacenar una imagen en SQL 2005, la imagen se debe seleccionar desde un equipo local y poder subirla al servidor (como los avatars), y despues poder mostrarlos al ingresar a la pagina, que aparezcan sus datos personales y su foto a un lado, esto haciendolo con C# en paginas ASP .NET

Si alguien tiene un ejemplo y lo puede mostrar por aqui pues que mejor, si no pues me lo pueden enviar al correo lupy8888(arroba)hotmail(punto)com
  #2 (permalink)  
Antiguo 02/10/2009, 16:07
Avatar de ah_puch  
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 18 años, 8 meses
Puntos: 3
Respuesta: usar imagen con ASP .NET (C#) y SQL 2005

en tu bd el campo donde vayas a guardar la imagen tiene que ser tipo Image

Código:
Function AgregarEditarImagen(ByVal Id As String, ByVal Path As String, ByVal Ext As String) As NullReferenceException
        If Not (LCase(Ext) = ".jpg" Or LCase(Ext) = ".png" Or LCase(Ext) = ".gif" Or Ext = "") Then
            
            Return Nothing
            Exit Function
        Else
            'Converites la imagen a arreglo de bytes
            Dim Fs As New FileStream(Path, FileMode.OpenOrCreate, FileAccess.Read)
            Dim Br As BinaryReader = New BinaryReader(Fs)
            Dim Image() As Byte = Br.ReadBytes(Fs.Length)

            Command = New SqlCommand("UPDATE TBL_SESIONES " & _
                                     "SET FOTO =@Imagen, Img_Ext =@Ext " & _
                                     "WHERE(CANDIDATO_ID = @Candidato )", cnx)

            Command.Parameters.Add("@Imagen", SqlDbType.Image).Value = Image
            Command.Parameters.Add("@Ext", SqlDbType.Char).Value = UCase(Ext)
            Command.Parameters.Add("@Candidato", SqlDbType.Char).Value = Id
            cnx.Open()
            Command.ExecuteNonQuery()
            cnx.Close()
        End If
        Return Nothing
    End Function


    Function DewscargarImg(ByVal Id As String) As String
            'aa por cierto asi es como se bajan de la bd
            Adapter = New SqlDataAdapter("SELECT * " & _
                                     "FROM TBL_SESIONES " & _
                                     "WHERE (candidato_id = " & Id & ")", cnx)

            Dim _CommandBuilder = New SqlCommandBuilder(Adapter)
            cnx.Open()
            Adapter.Fill(Ds, "ValidarFoto")

            Dim DsFila As DataRow
            Dim Image() As Byte
            Dim Ext As String, Imagen As String
        DsFila = Ds.Tables("ValidarFoto").Rows(0)

        Ext = DsFila("Img_Ext")
            Image = DsFila("Foto")
            Imagen = Id


            Dim I As Long = UBound(Image)
            Dim Fs As New FileStream(AppPath & Trim("Tmp\" & Imagen & "-trans" & Ext), FileMode.OpenOrCreate, FileAccess.Write)
            Fs.Write(Image, 0, I)
            Fs.Close()
            Fs = Nothing
            Ds = Nothing
            Adapter = Nothing
            _CommandBuilder = Nothing
            cnx.Close()
        Return Trim("Tmp/" & Imagen & "-trans" & Ext)
        Return Nothing
    End Function

sino revisa esto

http://blogs.vbcity.com/mcintyre/arc...0/11/6386.aspx
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com

Última edición por ah_puch; 02/10/2009 a las 16:12
  #3 (permalink)  
Antiguo 03/10/2009, 11:27
 
Fecha de Ingreso: abril-2008
Ubicación: Frente a mi máquina que suele estar en ... Cartagena-España
Mensajes: 106
Antigüedad: 16 años
Puntos: 8
Respuesta: usar imagen con ASP .NET (C#) y SQL 2005

Yo lo hago mediante proc. almacenado el SQL y FileUpload y Enterprise Library que simplifica el tema SQL.

//Con esto leo del fileupload que se llama fuArchivo
byte [] ByteDeArchivo = new byte[fuArchivo.PostedFile.InputStream.Length]); fuArchivo.PostedFile.InputStream.Read(ByteDeArchiv o, 0, ByteDeArchivo.Length);


//Lo paso a un objeto que lo llamo documento. Esa parte la omito.
//Y con lo siguiente lo mando a la BBDD.

Código:
try
            {
                //Creamos la conexión
                Database dbFac = DatabaseFactory.CreateDatabase();
                //Creamos el comando que ejecuta el procedimiento almacenado
                DbCommand dbCmd = dbFac.GetStoredProcCommand("Subearchivo");
                //Le añadimos los parámetros que necesita el procedimiento almacenado
                dbFac.AddInParameter(dbCmd, "@Documentos_ID", DbType.String, documento.Documentos_ID);
                dbFac.AddInParameter(dbCmd, "@Documentos_AVT", DbType.String, documento.Documentos_AVT);
                dbFac.AddInParameter(dbCmd, "@Documentos_Nombre", DbType.String, documento.AVTDocumentos_Nombre);
                dbFac.AddInParameter(dbCmd, "@Documentos_Archivo", DbType.Binary, documento.Documentos_Archivo);
                
                mensajecodigo = Convert.ToInt32(dbFac.ExecuteScalar(dbCmd));

                if (mensajecodigo == 0) { return true; }

                else { return false; }

            }
             catch (Exception e)
             {

                 throw e;
             }
Espero te sirva.... y aprovecho para comentarte mi pregunta.. sabes como descargar el archivo?? Yo ahora ando con eso y no hay forma. Abrí un tema en este hilo a ver si alguien conoce!!

Ya me comentarás si te sirve o si necesitas algo más

Saludos
  #4 (permalink)  
Antiguo 06/10/2009, 09:59
Avatar de JoSeAgUinaga  
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: usar imagen con ASP .NET (C#) y SQL 2005

Hola compañeros del foro, muchas gracias por sus respuestas, me ayudaron en gran manera a resolver el problema, ahora ya puedo subir imagenes a la base de datos de sql y mostrarlos en pantalla despues :) .

Por cierto titanikoktf, descargar el archivo te refieres a mostrarlo en pantalla o a descargarlo en un equipo cliente????
  #5 (permalink)  
Antiguo 06/10/2009, 10:50
 
Fecha de Ingreso: abril-2008
Ubicación: Frente a mi máquina que suele estar en ... Cartagena-España
Mensajes: 106
Antigüedad: 16 años
Puntos: 8
Respuesta: usar imagen con ASP .NET (C#) y SQL 2005

Hola buenas!!

Lo que necesito es hacer las dos cosas... abrirlos con la aplicación por defecto del SO o descargarlos sino se conoce. Es como si se hiciera un enlace pero desde BBDD. Se pincha en el enlace y sale el cuadro de diálogo de abrir con o guardar en el equipo del cliente.

Me cuentas como lo has hecho tu???

Un saludo y espero haberte aclarado.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:48.