Bitmap to binario

venerdì 20 novembre 2009 - 16.09

gabriel81 Profilo | Junior Member

Ciao a tutti,
ho appena provato a caricare le immagini su SQL Server in un campo Image.
con questa funzione

Private Function ImageToStream() As Byte()
Dim Image As New Bitmap(CampoTesto1.Text)
Dim stream As MemoryStream = New MemoryStream()
Image.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp)
Return stream.ToArray()
End Function

Da li carico poii dati sul db.
Molto bello, facile e comodo.

Peccato che 3 jpg da 1,21 MB, mi allocano più di 30 MB !!!!!!!

Come mai aumenta le dimensioni in questo modo???????

http://www.myspace.com/madmack1981

Brainkiller Profilo | Guru

>Da li carico poii dati sul db.
>Molto bello, facile e comodo.
>Peccato che 3 jpg da 1,21 MB, mi allocano più di 30 MB !!!!!!!
>Come mai aumenta le dimensioni in questo modo???????

Stai parlando di "Allocati" nella memoria dell'applicazione o nella tabella del database ?
Seconda cosa, se ti è possibile evita di immagazzinare BLOB (quindi immagini, o stream di byte) direttamente all'interno del database.
Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

gabriel81 Profilo | Junior Member

Parlo di spazio dati , che è di 33 MB circa.
Dici che è meglio salvare solo il link dell'immagine e tirarmela su da file system???


http://www.myspace.com/madmack1981

Brainkiller Profilo | Guru

>Parlo di spazio dati , che è di 33 MB circa.

Beh l'allocazione di spazio di SQL Server non corrisponde a quello che tu pensi. Magari ha allocato più mega di quelli realmente inseriti. E' normale.

>Dici che è meglio salvare solo il link dell'immagine e tirarmela
>su da file system???

Direi di sì, si preferisce sempre questo scenario anche perchè poi a caricare e scaricare file dal database non è proprio così rapido anche a livello di codice. Oppure se usi SQL 2008 puoi utilizzare la nuova feature FILESTREAM che ti consente di inserire dei file nel database ma poi vengono scritti su file system invece che proprio dentro il DB. Qui trovi maggior info sulla funzionalità:
http://msdn.microsoft.com/en-us/library/cc949109.aspx

Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

gabriel81 Profilo | Junior Member

No, nel mio caso sto creando un prg per la creazione di preventivi commerciali, c'è un'anagrafica articoli e per alcuni articoli ci sono diverse foto.
Le foto in ballo sono diverse, almeno un centinaio.. e non ho il 2008, solo 2005 Express. Credo che andrò di link e file System...

http://www.myspace.com/madmack1981
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5