Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    fare upload di file grande - intercettare errore

    Dunque, nel web.config imposto che posso inviare via post al massimo 1Mb.
    Faccio l'upload di un file grande e voglio intercettare l'errore per presentare una pagina decente di avviso.

    Per esempio, nel global.asax metto:

    Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
    ' Codice eseguito in caso di errore non gestito
    'Server.ClearError()
    'Response.Redirect("~/prove/a.htm", True)
    Response.Clear()
    Response.Write("ciao")
    Response.End()
    End Sub


    FUNZIONA SOLO CON OPERA, con IE7 e Firefox NO.

    Voi, come fate?
    Pietro

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Io uso questo Modulo (ErrorLogger.vb) opportunamente registrato nel WC, da esempio di Balena:

    codice:
    Public Class ErrorLogger
        Implements IHttpModule
    
        Dim WithEvents application As HttpApplication
        Public Shared errormessages As New ArrayList
    
        Public Sub Init(ByVal context As System.Web.HttpApplication) Implements System.Web.IHttpModule.Init
            application = context
        End Sub
    
        Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
            Dim msg As System.Text.StringBuilder
            msg.Append("Si è verificata una eccezione alle: " & Now.ToString & "
    ")
            msg.Append("URL: " & application.Request.Path & "
    ")
            msg.Append("QueryString: " & application.Request.QueryString.ToString & "
    
    ")
            msg.Append(application.Server.GetLastError.ToString.Replace(ControlChars.CrLf, "
    "))
    
            ' Nel caso di applicativi Multi-Threading
            SyncLock errormessages.SyncRoot
                errormessages.Insert(0, msg)
            End SyncLock
        End Sub
    
        Public Sub Dispose() Implements System.Web.IHttpModule.Dispose
            application = Nothing
        End Sub
    End Class
    e:
    codice:
    ErrorLogger.errormessages
    da qualsiasi punto nel codice.

    ma è tanto per la crononaca. non credo c'entri col tuo problema

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    :master: gli intercetta gli errori che dico io? Se tenti di fare un upload di un file grande il browser ti restituisce la classica pagina "pagina non trovata" o la tua personalizzata?
    Pietro

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Intercetta tutte le eccezioni non gestite, quindi anche quelle di IO.
    L'unica differenza con il global è che mette queste in un ArrayList accessibile da tutto il codice.
    (E' stata dichiarata la variabile application come HTTPApplication e se ne gestisce l'evento Error)
    Ma ti ripeto, non e' il tuo caso perche' e' come un'alternativa al trace.axd....

    Hai provato in alternativa a settare una pagina da IIS per l'opportuno codice di errore ?

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    allora, non ho provato ErrorLogger. Adesso mi sto concentrando su Application_Error

    Ho visto col debug che entra, fa il redirect, ma ricevo la pagina solo con Opera e non con gli altri browser. :master:
    Pietro

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Originariamente inviato da pietro09
    allora, non ho provato ErrorLogger. Adesso mi sto concentrando su Application_Error

    Ho visto col debug che entra, fa il redirect, ma ricevo la pagina solo con Opera e non con gli altri browser. :master:
    con gli altri cosa vedi?

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da djciko
    con gli altri cosa vedi?
    la classica pagina che ottieni con un indirizzo sbagliato
    Pietro

  8. #8
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    controlla i settaggi per i Redirect in IIS, l'URL dovrebbe rimanere fermo quando interviene Application_Error...(a meno che il redirect non l'abbia fatto tu a mano)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.