Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 28
  1. #11
    Originariamente inviato da pietro09
    cosa è cosa?
    Me ... poi c'ho pensato un secondo .... ed ho dedotto che in VB Me sia il this di tutto il "resto del mondo" ...



    Originariamente inviato da pietro09
    non è che ti serve per usare con ahah
    ma anche no

    ... cmq è per request asincrone, stò tentando ri replicare un report su file di testo analogo a quello fatto da una classe PHP .

    Ho fatto tutto e tutto funziona, unica ed ultima parte non funzionante è la cattura dell'output, una stringa, che presumo, grazie a kenta, di aver risolto, devo solo provare se come metodo privato di una classe esterna e caricata in assembly funziona
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  2. #12
    Originariamente inviato da andr3a
    devo solo provare se come metodo privato di una classe esterna e caricata in assembly funziona
    non va una fava


    la faccio semplice ...

    codice:
    void Page_Load() {
    	
    	// inizializzatore cattura output ?
    
    
    	// output di qualunque tipo
    	Response.Write("quello che caspita mi pare");
    
    
    	// fine della pagina ... 
    	// vorrei sapere cosa è stato mostrato...
    }
    per un sistema web dovrebbe essere l'ABC ... non ho trovato invece niente in merito ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #13
    Originariamente inviato da andr3a
    non va una fava


    la faccio semplice ...

    codice:
    void Page_Load() {
    	
    	// inizializzatore cattura output ?
    
    
    	// output di qualunque tipo
    //	Response.Write("quello che caspita mi pare");
    Literal1.Text="Quello che pare a me";
    
    
    	// fine della pagina ... 
    	// vorrei sapere cosa è stato mostrato...
    }
    per un sistema web dovrebbe essere l'ABC ... non ho trovato invece niente in merito ...
    invece di usare Response.write usa un literal

    codice:
    void Page_Load() {
    	
    	// inizializzatore cattura output ?
    
    
    	// output di qualunque tipo
    //	Response.Write("quello che caspita mi pare");
    Literal1.text="Quello che pare a me";
    
    
    	// fine della pagina ... 
    	// vorrei sapere cosa è stato mostrato...
    }
    dimmi che non fa quello che ti serve e ti sego via una gamba, poi con la rotula ci giuoco a kricket

  4. #14
    Originariamente inviato da kentaromiura
    dimmi che non fa quello che ti serve e ti sego via una gamba, poi con la rotula ci giuoco a kricket
    ma scusa ... così vincolo comunque l'utilizzatore ad usare literal invece di Response ... cioè, sul serio non esiste un modo per controllare il flusso di caratteri in uscita ?

    Response.Write non sarà mica un alieno e difficilmente posso credere che mentre la pagina elabora, essendo compilata, l'output "se ne va" per i fatti suoi ... dovrei solo raggiungere la direttiva che invia il testo, un istante prima che lo faccia, come è con ob_get_contents() di php.


    .... qualora non fosse possibile, usando literal, dove devo mettere quella funzione da te tradotta ?
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #15
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Sinceramente non mi sono mai occupato di questi problemi esistenziali, ma ragionando, non credo che si possa recuperare l'html generato nell'evento load, ma solo nell'evento preposto, per esempio, Page_PreRender. Credo che sia lì che si possa intercettare l'html, manipolarlo e restituirlo al chiamante.

    Se lo voglio fare in una classe esterna (come credo di aver capito), bisogna passare il controllo page ed intercettarne l'evento:

    Allora, supponiamo che voglio recuperare l'innerHTML di un certo div (la faccio semplice), nell'evento load della pagina, istanzio la mia classe esterna:

    Dim o As New PageWrapper(Me), ove passo l'oggetto page corrente. La classe sarà, per esempio:
    codice:
    Public Class PageWrapper
        Private WithEvents page As Page
    
        Public Sub New(ByVal page As page)
            Me.page = page
        End Sub
    
        Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles page.PreRender
            Dim Html$ = ""
            Dim stringWriter As StringWriter
            Dim sourceCode As HtmlTextWriter
    
    
            'catturo il codice HTML e lo salvo in una stringa
            stringWriter = New StringWriter
            sourceCode = New HtmlTextWriter(stringWriter)
            page.RenderControl(sourceCode)
            sourceCode.Flush()
    
            Html = stringWriter.ToString
    
            If Not sourceCode Is Nothing Then sourceCode.Close()
            If Not stringWriter Is Nothing Then stringWriter.Close()
    
            'manipolo html: voglio l'innerHTML di div1, per esempio
            Dim p1, p2 As Integer
            p1 = Html.IndexOf("<div id=""div1"">")
            p2 = Html.IndexOf("</div>")
    
            Dim result As String = Html.Substring(p1 + 15, p2 - (p1 + 15))
    
            page.Response.Write(result)
    
            page.Response.End()
    
    
        End Sub
    
    End Class
    ps. se non è questo che volevi, mi dispiace,

    ciao
    Pietro

  6. #16
    Originariamente inviato da pietro09
    Sinceramente non mi sono mai occupato di questi problemi esistenziali
    avere controllo sul flusso dati in uscita lo trovi un problema esistenziale ? ... ripeto, per me è l'abc dello sviluppo web, sarò strano io ...



    Originariamente inviato da pietro09
    , ma ragionando, non credo che si possa recuperare l'html generato nell'evento load, ma solo nell'evento preposto
    se il load invia all'utente del testo o modifica in qualunque modo il contenuto della pagina significa che proprio a fine Load il risultato di tutto viene inviato.

    Il Buffer quindi sarà completo solo alla fine di tale metodo, l'unica cosa che mi servirebbe è raggiungere quel buffer, che sarà una banalissima stringa di caratteri inviata all'utente, tramite l'ultima riga utile di codice all'interno di Load.


    Se sono domande aliene, per come la vedo io, avete vincoli enormi o non avete mai avuto l'esigenza di controllare quanto mostrato a seconda del visitatore / utente ... cosa che ritengo, come detto, l'ABC dello sviluppo web.

    Non mi aspettavo la semplicità concettuale e strtturale del PHP, ma nemmeno l'impossibilità di questa banalità ... e non vorrei ritrovarmi come l'unico altro 3D aperto sul C#, che dopo 4 pagine di "impossibile" ho scoperto per i fatti miei l'implicit cast


    Grazie comunque per i vostri consigli
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #17
    Originariamente inviato da andr3a
    ma scusa ... così vincolo comunque l'utilizzatore ad usare literal invece di Response ... cioè, sul serio non esiste un modo per controllare il flusso di caratteri in uscita ?

    Response.Write non sarà mica un alieno e difficilmente posso credere che mentre la pagina elabora, essendo compilata, l'output "se ne va" per i fatti suoi ... dovrei solo raggiungere la direttiva che invia il testo, un istante prima che lo faccia, come è con ob_get_contents() di php.


    .... qualora non fosse possibile, usando literal, dove devo mettere quella funzione da te tradotta ?
    guarda che sei tu che non cogli un piccolo particolare...
    in ASP.Net NON si dovrebbe usare il Response.Write() MAI

    quindi non limiti l'uso al Literal l'HTML generato e quello che cogli facendo il viewsource: della pagina

    codice:
    ciclo di vita pagina ASP.net
    1)creazione degli oggetti
    2)caricamento viewstate
    3)caricamento postdata
    4)caricamento oggetti (load)
    5)postback change ok
    6)client side postback
    7)pre render
    8)salvataggio viewstate
    9)render to HTML[clientside only]
    10)dispose oggetti
    tu puoi beccarti nella fase 7 l'HTML generato
    aggiungendo nell'InitializeComponent (se usi VS 2003 e nella parte Web Form Designer generated code in vs2005 non so..) aggiungi
    this.PreRender += new EventHandler(Page_Prerender);
    altrimenti nel 2005 aggiungila direttamente dall' IDE

    e scrivi quella roba la che ho tradotto..

    detto questo non credo sia possibile poiche mi sembra che il response sputi direttamente la roba al client(dovresti disabilitare la cache Response.Buffer=false; per vedere cio')

  8. #18
    forse non ho ben capito quel che ti serve, ma forse puoi lavorare nel global.asax sugli eventi pubblici, in particolare sul PreSendRequestContent

    http://msdn.microsoft.com/library/it...blicevents.asp

    se ho toppato scusa
    "...non è detto che sia tardi se non guardi che ora è..."

  9. #19
    Originariamente inviato da Raffa62
    forse non ho ben capito quel che ti serve, ma forse puoi lavorare nel global.asax sugli eventi pubblici, in particolare sul PreSendRequestContent

    http://msdn.microsoft.com/library/it...blicevents.asp


    In ASP.NET si fa tutto (anche i tortellini )..


  10. #20

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 © 2025 vBulletin Solutions, Inc. All rights reserved.