14 messaggi dal 28 marzo 2014
www.sigmabeta.it
Sto sviluppando su VWD2008 con Win7.
L'utente selezionando un' immagine che puo' essere sia nel filesystem che all' interno del sito, dovrebbe ricevere un messaggio con scritta la larghezza e uno con scritta l' altezza dell' immagine stessa.

Funziona bene se l'immagine e' nel file system ma restituisce l' errore:
System.IO.FileNotFoundException: ~/images/2009_0195.jpg
se l' immagine si trova interna al sito stesso.

Ecco il codice semplificato che utilizzo (alcuni NameSpace sembrerebbero inutili ma si tratta di codice semplificato al nostro esempio):
#Region "Directives"

Imports System.Data
Imports System.Configuration
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls
Imports System.Collections.Generic
Imports System.IO
Imports System.Drawing

#End Region

Partial Public Class _Default
    Inherits System.Web.UI.Page
    Public Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim image As System.Drawing.Image

        image = Drawing.Image.FromFile("~/images/2009_0195.jpg")
        'image = Drawing.Image.FronFile("C:\Temp\2009_0195.jpg")

            ClientScript.RegisterStartupScript(Me.[GetType](), "Alert", "<script type=text/javascript>alert('" & image.Width & "')</script>")
            ClientScript.RegisterStartupScript(Me.[GetType](), "Alert", "<script type=text/javascript>alert('" & image.Height & "')</script>")
        End If

    End Sub
End Class

Qualche idea?

Devo evitare di scaricare l' immagine contenuta nel sito, quindi deve potere leggere l' immagine da li'.

Sergio
It's too late to be late again!
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
il metodo FromFile si aspetta che tu fornisca un percorso fisico, ovvero un qualcosa come C:\inetpub\wwwroot\tuosito\cartella\immagine.jpg.

Tu invece in questo momento hai un percorso virtuale, relativo alla root dell'applicazione. Puoi facilmente convertirlo in un percorso fisico usando Server.MapPath.

Prova così:
image = Drawing.Image.FromFile(Server.MapPath("~/images/2009_0195.jpg"))



ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.