Immagine da sql server

giovedì 10 novembre 2005 - 16.37

daniele101 Profilo | Newbie

Gentili amici,
stavo cercando il modo di scaricare un' immagine portata precedentemente in DB;
mi sono felicemente inbattuto nell'articolo "Gestire e sfruttare i campi blob usando .Net".
Un articolo scritto e spiegato benissimo.
Fino ad allora ho cercato di scaricare il file binario con una istanza di sqlDataReader, ma ho ttrovato delle difficoltà
(per mia ignoranza ovviamente).

La mia domanda è questa: è possibile trasformare SqlDataReader("nomeCampoImmagine") in uno stream?
Cosa è sqlDataReader("nomeCampoImmagine"), non è uno stream e non è un buffer inquanto non riesco ad applicare
i metodi e proprietà di queste classi.

Qualcuno sa dirmi qualcosaa in merito?

grazie

gilberto Profilo | Junior Member

Io ti posso dare l'esempio che mi sono costruito.
E' in allegato.

Ciao!

Gilbert

daniele101 Profilo | Newbie

garzie Gilberto,
non ti faccio i complimenti perchè una persona che scrive un codice così ben strutturato e chiaro, sa di essere incredibilmente capace.

Quello che tu utilizzi per prendere l'immagine da DB è un DataSet, come ha scritto nel suo articolo Davide di Giacomi, quello che chiedo è perchè non è possibile utilizzare un SqlDataReader.
Personalmente ho incontrato della difficoltà in quanto SqlDataReader("nomecampoImmagine") credevo fosse un buffer o uno stream ma così non è.
Ecco perchè mi sono chiesto cosa diavolo mi ritorna dal DB quando richiedo un 'Binary' , e se è possibile trasformarlo in un buffer per poi gestirlo come stream.
Per arrivare ad utilizzare un DataSet o lavorate normalmente scaricando in questo modo informazioni, oppure vi siete imbattuti nel problema e avete visto l'impossibilità di questa strada.

Continuo quindi a chiedere aiuto.
Grazie



Brainkiller Profilo | Guru

>Continuo quindi a chiedere aiuto.
>Grazie

Ciao Daniele,
penso che si possa usare tranquillamente anche il DataReader. Ti ho allegato a questo post un file zip che contiene la procedura per leggere dal database un campo Blob tramite datareader e scriverlo su disco.

Ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
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