Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Caricare un'immagine - Problemi con gli indirizzi...
giovedì 31 luglio 2008 - 17.38
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
gio 31 lug 2008 - 17:38
Salve a tutti!
Ho un problema con gli indirizzi delle immagini, ho già anche letto post simili, ma non ancora riesco a risolvere.
Per creare un'immagine utilizzo il comando:
System.Drawing.Image imgFotoPrincipale = Bitmap.FromFile(strNomeFileFoto);
Il problema sta nel fatto che Bitmap.FromFile accetta solo string, mentre l'indirizzo della foto è in formato uri, in quanto le foto sono sul server, perciò sono del tipo http://./././NomeFIleFoto.
Utilizzando Server.MapPath non sono riuscito a risolvere ugualmente..
Ringrazio tutti anticipatamente.... :)
19018
Profilo
| Expert
502
messaggi | Data Invio:
gio 31 lug 2008 - 17:57
Prova a passare l'indirizzo fisico delle foto sul server
es : c:\www\miosito\foto\foto.jpg
e non con http
ciao
Stefano Passatordi
http://blogs.dotnethell.it/stem/
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
gio 31 lug 2008 - 18:01
>Prova a passare l'indirizzo fisico delle foto sul server
>es : c:\www\miosito\foto\foto.jpg
>
>e non con http
Ciao, grazie della risposta.
Il problema è che il mio sito è su un provider, quindi non riesco a passare correttamente tutto il percorso. Ho bisogno di un qualcosa che mi permetta di risalire alla parte iniziale del cammino, ma che restituisca una stringa, in quanto successivamente devo passare una stringa bitmap.fromFIle.
Spero di essermi fatto capire
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
gio 31 lug 2008 - 18:06
Ciao,
sicuro che Server.MapPath non sia quello che ti serve?
http://msdn.microsoft.com/en-us/library/ms524632.aspx
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
gio 31 lug 2008 - 19:15
ricorda solo che la sintassi del mappath è
server.mappath("./" stringa root della foto sul server ")
se non funziona mi dispiace... ti manca un pezzo del percorso del file
Buona fortuna è che URL sia con tè
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
ven 1 ago 2008 - 10:11
Ciao a tutti e grazie delle vostre risposte...ma non ancora riesco a risolvere...
Vediamo di chiarire un po' meglio la situazione:
- Come già detto, devo utilizzare il metodo Bitmap.FromFile che accetta solo indirizzi assoluti in formato stringa, perciò tutti i metodi Request.* restituiscono un indirizzo virtuale e mi da errore. Stessa cosa creando un indirizzo con uri indirizzo = new uri().
- La soluzione al mio problema è sicuramente Server.MapPath, ma non riesco a farlo funzionare per un semplice motivo: cioè che le foto che voglio caricare, stanno sì sullo stesso server, ma in una cartella principale diversa, cioè:
io mi trovo qui C:\Inetpub\wwwroot\web\sito\cartella\miofile.aspx
le foto sono qui C:\Inetpub\wwwroot\web\altrosito\public\foto\miofile.jpg
Quindi server MapPath mi restituisce sempre C:\Inetpub\wwwroot\sito\web\public\foto\miofile.jpg <- ma non esiste.....
Io devo risalire fino a wwwroot e cambiare cartella, ecco perchè non riesco...
Ho provato a fare delle "schifezze" del tipo Server.MapPath("../" + PercorsoFoto) oppure Server.MapPath("../../" + PercorsoFoto), ma niente.
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
ven 1 ago 2008 - 10:33
>Io devo risalire fino a wwwroot e cambiare cartella, ecco perchè
>non riesco...
>Ho provato a fare delle "schifezze" del tipo Server.MapPath("../"
>+ PercorsoFoto) oppure Server.MapPath("../../" + PercorsoFoto),
>ma niente.
>
Se sono due virtual differenti prova a partire dalla root del sito web, ad esempio:
- Server.MapPath("/tuosito/foto")
- Server.MapPath("/altrosito/foto")
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
ven 1 ago 2008 - 10:48
>Se sono due virtual differenti prova a partire dalla root del
>sito web, ad esempio:
>- Server.MapPath("/tuosito/foto")
>- Server.MapPath("/altrosito/foto")
Perdonami, ma temo di non aver capito.
Come dovrei fare? Dovrei concatenare i due indirizzi?
Potresti postarmi un esempio?
Grazie
Ciao
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
ven 1 ago 2008 - 11:28
Se hai due indirizzi del tipo:
-
http://www.pippo.it/tuosito/foto/foto1.jpg
-
http://www.pippo.it/altrosito/foto/foto2.jpg
per prendere il path fisico puoi farei:
- Server.MapPath("/tuosito/foto/foto1.jpg")
- Server.MapPath("/altrosito/foto/foto2.jpg")
però come vedi sono due virtual application differenti all'interno dello stesso website
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
ven 1 ago 2008 - 11:37
>Se hai due indirizzi del tipo:
>-
http://www.pippo.it/tuosito/foto/foto1.jpg
>-
http://www.pippo.it/altrosito/foto/foto2.jpg
>
>per prendere il path fisico puoi farei:
>- Server.MapPath("/tuosito/foto/foto1.jpg")
>- Server.MapPath("/altrosito/foto/foto2.jpg")
>
>però come vedi sono due virtual application differenti all'interno
>dello stesso website
>-----------------------------------------
>Rossi Marco
>
http://blogs.dotnethell.it/rossimarko
Ok, ma io come faccio a passare un unico indirizzo a Bitmap.FromFile? Io devo passare una sola stringa che mi riesca a far salire da dove mi trovo
-> io mi trovo qui C:\Inetpub\wwwroot\web\sito\cartella\miofile.aspx
-> le foto sono qui C:\Inetpub\wwwroot\web\altrosito\public\foto\miofile.jpg
Potesti aiutarmi partendo dagli indirizzi che ti sto indicando io?
Grazie!
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
ven 1 ago 2008 - 14:56
>Ok, ma io come faccio a passare un unico indirizzo a Bitmap.FromFile?
>Io devo passare una sola stringa che mi riesca a far salire da
>dove mi trovo
>-> io mi trovo qui C:\Inetpub\wwwroot\web\sito\cartella\miofile.aspx
>-> le foto sono qui C:\Inetpub\wwwroot\web\altrosito\public\foto\miofile.jpg
>Potesti aiutarmi partendo dagli indirizzi che ti sto indicando
>io?
Se "sito" e "altrosito" sono due virtual application all'interno dello stesso website suppongo che l'indirizzo http dell'immagine sia una cosa del tipo
http://www.pippo.it/altrosito/public/foto/miofile.jpg
(mentre la tua pagina è
http://www.pippo.it/sito/cartella/miofile.aspx
)
Partendo da questo presupposto tu devi passare come parametro alla server.MapPath la stringa "/altrosito/public/foto/miofile.jpg"
Se invece il tuo sito e l'immagine sono in due website diversi (ad esempio la tua pagina è sotto
http://www.pluto.net/sito/cartella/miofile.aspx
) allora non puoi sfruttare la server.MapPath perchè non accetta un percorso http completo. In questo caso bisogna trovare un'altra soluzione, ma dipende anche dalla funzionalità che devi implementare.
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
ven 1 ago 2008 - 15:15
>>Ok, ma io come faccio a passare un unico indirizzo a Bitmap.FromFile?
>>Io devo passare una sola stringa che mi riesca a far salire da
>>dove mi trovo
>>-> io mi trovo qui C:\Inetpub\wwwroot\web\sito\cartella\miofile.aspx
>>-> le foto sono qui C:\Inetpub\wwwroot\web\altrosito\public\foto\miofile.jpg
>>Potesti aiutarmi partendo dagli indirizzi che ti sto indicando
>>io?
>
>
>Se "sito" e "altrosito" sono due virtual application all'interno
>dello stesso website suppongo che l'indirizzo http dell'immagine
>sia una cosa del tipo
http://www.pippo.it/altrosito/public/foto/miofile.jpg
>(mentre la tua pagina è
http://www.pippo.it/sito/cartella/miofile.aspx
)
>
>Partendo da questo presupposto tu devi passare come parametro
>
>Se invece il tuo sito e l'immagine sono in due website diversi
>(ad esempio la tua pagina è sotto
http://www.pluto.net/sito/cartella/miofile.aspx
)
>allora non puoi sfruttare la server.MapPath perchè non accetta
>un percorso http completo. In questo caso bisogna trovare un'altra
>soluzione, ma dipende anche dalla funzionalità che devi implementare.
>
>-----------------------------------------
>Rossi Marco
>
http://blogs.dotnethell.it/rossimarko
Niente, facendo come dici tu
>server.MapPath "/altrosito/public/foto/miofile.jpg"
mi riprende il percorso della foto, ma tronca la parte iniziale, cioè C:\inetpub\wwwroot, mentre il resto va bene
facendo >server.MapPath "../altrosito/public/foto/miofile.jpg", mi sale troppo e scrive una cosa del genere
C:\inetpub\wwwroot\sito\altrosito\public\foto\miofile.jpg.
Uffaaaa :)
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
ven 1 ago 2008 - 16:12
>mi riprende il percorso della foto, ma tronca la parte iniziale,
>cioè C:\inetpub\wwwroot, mentre il resto va bene
>
>facendo >server.MapPath "../altrosito/public/foto/miofile.jpg",
>mi sale troppo e scrive una cosa del genere
>
>C:\inetpub\wwwroot\sito\altrosito\public\foto\miofile.jpg.
>
Puoi dirmi i path http completi (sia della pagina che del sitoweb) e quelli che ti restituisce la server.mappath ?
Non è che sono due domini diversi?
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
stuzzo
Profilo
| Junior Member
133
messaggi | Data Invio:
ven 1 ago 2008 - 16:24
>>mi riprende il percorso della foto, ma tronca la parte iniziale,
>>cioè C:\inetpub\wwwroot, mentre il resto va bene
>>
>>facendo >server.MapPath "../altrosito/public/foto/miofile.jpg",
>>mi sale troppo e scrive una cosa del genere
>>
>>C:\inetpub\wwwroot\sito\altrosito\public\foto\miofile.jpg.
>>
>
>Puoi dirmi i path http completi (sia della pagina che del sitoweb)
>e quelli che ti restituisce la server.mappath ?
>Non è che sono due domini diversi?
>
>-----------------------------------------
>Rossi Marco
>
http://blogs.dotnethell.it/rossimarko
Allora indirizzi
http:\\server\sito\gestione\miapagina.aspx <- dove sono
http:\\server\altrosito\public\foto\miofile.jpg <- dove sta la foto
MapPath("\altrosito\public\foto\miofile.jpg") <- Restituisce \altrosito\public\foto\miofile.jpg
MapPath("../altrosito/public/foto/miofile.jpg) <- Restituisce \server\sito\altrosito\public\foto\miofile.jpg
Come ti ripeto non posso passare indirizzi del tipo http:\\... al Bitmap.FromFile
Spero di averti fatto capire
Ciao e grazie
rossimarko
Profilo
| Guru
1.173
messaggi | Data Invio:
ven 1 ago 2008 - 16:50
Scusami,
ma Server.MapPath("/altrosito/public/foto/miofile.jpg") dovrebbe ritornari un path fisico, del tipo c:\inetupub\wwwroot\altrosito ecc oppure c:\project\..., ovvero la cartella fisica in cui è stato salvato il file.
non capisco il fatto che ti ritorni \server\sito\altrosito\public\foto\miofile.jpg
Hai già controllato su IIS che sia tutto corretto? Eventualmente mi mandi uno screenshot della struttura su IIS?
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko
Torna su
Stanze Forum
Elenco Threads
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 !