none
Istruzione <% Bind("xx") %>, come funziona? RRS feed

  • Domanda

  • Salve,

    volevo sapere come funziona in dettaglio questa istruzione.
    Ovvero in che momento, sotto quale evento, come viene gestita....

    insomma i dettagli tecnici mi farebbero molto comodo, visto che mi sto incasinando su una cosa, probabilmente non mi ricordo un cavolo di quello che ho studiato.

    ciao grazie


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 11:12

Risposte

Tutte le risposte

  • Salve,

    volevo sapere come funziona in dettaglio questa istruzione.
    Ovvero in che momento, sotto quale evento, come viene gestita....

    insomma i dettagli tecnici mi farebbero molto comodo, visto che mi sto incasinando su una cosa, probabilmente non mi ricordo un cavolo di quello che ho studiato.

    ciao grazie


    Programamtore ASP.NET
    http://glucolo.wordpress.com


    Due ottimi punti di partenza sono, a mio parere, questa pagina dei BOL e questo blog post.

    Ciao!


    Francesco Milano // .NET & SQL Server Consultant // blog // twitter
    venerdì 20 gennaio 2012 11:22
  • Ciao,

     

    qui trovi un esempio  http://dotnetspidor.blogspot.com/2008/11/aspnet-eval-and-bind-expressions-in_17.html

    e qui una spiegazione del suo funzionamento http://www.aspitalia.com/script/791/Databind-Twoway-ASP.NET-2.0-Sharp-Bind-.aspx

     

    Fammi sapere se hai altri dubbi ;)

     

    Buona giornata


    Carmine Punella
    Blog: Link
    venerdì 20 gennaio 2012 11:23
  • Beh in pratica serve per il 2 way binding al posto di eval che è solo nella direzione di "lettura"

    Bind lo usi dentro gli edititem template del gridview listview etc per fare l'aggiornamento del dato nel db usando i vari sqldatasource entitydatasource etc

     

    il nome che ci metti dentro xx è il campo che poi viene aggiornato nella query di update. Il valore è quello ad esempio del textbox

    va usato tipo <asp:textbox text='<%#bind("nomeprodotto")%>'  ... />


    venerdì 20 gennaio 2012 11:25
  • Ciao,

    io ringrazio tutti per i link che mi avete mandato, ma oltre ad una spiegazione del suo funzionamento, non ho i dettagli che mi servono.

    In pratica vorrei sapere come vengono gestiti i dati, quando vengono letti e quando scritti, per ricreare lo stesso funzionamento manualmente.
    In che momento vengono prelevati i dati dalla request.form e messi nei controlli? chi fa questo?

    Mi serve perché ho un repeater senza viewstate, ed un pulsante nella pagina per fare il salvataggio batch, non riga per riga.

    Chi mi può dare una mano?


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 11:58
  • Ciao,

    prova a dare un'occhiata l seguente link:

    http://msdn.microsoft.com/en-us/library/ie/ms178472.aspx

    ripercorre tutto il page life cycle e dedica una sezione a come il DataBinding si inserisce all'interno del processo, anche per controlli nidificati.


    Francesco Milano // .NET & SQL Server Consultant // blog // twitter
    • Contrassegnato come risposta Glauco Cucchiar martedì 24 gennaio 2012 11:23
    venerdì 20 gennaio 2012 13:40
  • Perfetto, avevo una vesrione vecchia stampata di questa pagina. Qui c'è un bellissimo schema che è quello che cercavo.

    Dallo schema vedo che il punto critico che stavo cercando era proprio nel LOAD della pagina, che chiama il LoadViewState e il LoadPostData dei controlli.
    Presumo che sia qui dove sostituisce i vecchi valori nel ViewState con quelli nuovi (prima quindi ell'evento onLoad).

    A questo punto mi chiedo, come mai se controllo il valore delle textbox nel Page_Load, non hanno i valori nuovi (viewstate abilitato si intende)???

    figuriamoci con il vewstate spento


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 14:29
  • Il DataBinding del Repeater quando lo esegui?


    Francesco Milano // .NET & SQL Server Consultant // blog // twitter
    venerdì 20 gennaio 2012 14:43
  • guarda, ho cambiato tutto.

    ho risrcitto la pagina completamente da capo, e purtroppo me la devo tenere con il viewstate acceso (ENORME!!!!)

    ora ho rimesso il databind dei controlli nel prerender,
    mentre nel click del pulsante "salva" ciclo i repeater per prelevare i nuovi dati, salvarli nel BO e nel DB.
    Questo passaggio non funziona se disabilito il viewstate.


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 16:31
  • scusa ma usi il repeater per un motivo ben preciso? 
    Carmine Punella
    Blog: Link
    venerdì 20 gennaio 2012 16:37
  • scusa ma usi il repeater per un motivo ben preciso? 
    Carmine Punella
    Blog: Link


    Mi accodo a quanto dice Carmine: mi sembra, ma correggimi se sbaglio, che stai facendo fare al repeater del lavoro di troppo...su che versione del framework stai sviluppando? un ListView o un GridView non fanno più al caso tuo?

    Ciao!


    Francesco Milano // .NET & SQL Server Consultant // blog // twitter
    venerdì 20 gennaio 2012 17:23
  • il bind dentro al repeater non ci stà molto , non averndo quest'utlimo edititemtemplate. Pure io ti suggerisco di usare gli altri controlli (che però avranno un viewstate maggiore)

    Il viewstate del repeater non è che poi sia così esagerato, anzi è il più economico..  NOn è che nel repeater c'è dentro qualcosa di molto "goloso" di viewstate ?

     

    venerdì 20 gennaio 2012 18:53
  • Ciao Glauco,

    Ti propongo una soluzione un pò diversa, se stai lavorando con dati tabellari potresti utilizzare questo fantastico componente

    http://dhtmlx.com/docs/products/dhtmlxGrid

    In pratica si tratta di una griglia totalmente javascript, sviluppata con il framework extJS, a me ha tolto le castagne dal fuoco più di una volta.
    Tutto quello che devi fare è gestire il caricamento dei dati e la loro persistenza.
    C'è da scrivere un pò di codice ma dopo un pò sarai in grado di fare quasi tutto.

    Saluti Ezio.

    venerdì 20 gennaio 2012 19:17
  • grazie, ma non posso utilizzare altro che gli oggetti standard di .NET, purtroppo ho le mani legate.

    Rispondo anche agli altri:
    ho la necessità di editare tutti i dati, e poi fare un salvataggio bulk. Ero partito con il repeater perché appunto semplice per questo tipo di operazioni. In verità io ho già anche un controllo griglia che mi fa il bulk (che mi sono fatto io), ma questa volta i dati non sono proprio tabellari.

    Ho delle gerarchia tipo prodotto -> presso -> provenienza

    ecco anche il motivo di un repeater dentro l'altro.

    Comunque ho riabilitato il viewstate sui controlli, e visto che non funzionava molto bene, ho rifatto da capo, anche seguendo i vostri consigli.
    Ora funziona bene, anche se ha un vewstate enorme. Pazienza.

    anzi, un errore me lo da, ma quello vedo di risolvere.

    Grazie infinite a tutti

     


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 20:10
  • .NET 3.5

    tra listview e repeater, in verità per cose semplici preferisco il repeater.
    quello che devo fare non è altro che presentare una serie (lunga serie) di campi editabili, con una piccola gerarchia tra i dati, e poi salvare tutto d'un botto.
    Veramente c'è anche una form modale per aggiungere delle gerarchie, ma non è quello il problema.

    tutto era nato dal momento che ho tolto il viewstate perché pesante, e ho cercato di far funzionare senza, ma pazienza.......

    ciao


    Programamtore ASP.NET
    http://glucolo.wordpress.com
    venerdì 20 gennaio 2012 20:13
  • Ciao Glauco,

    Se trovi che la tua domanda è stata risposta, ti prego di ricordare a evidenziare le risposte che ti hanno aiutato.

    Grazie in anticipo,


    Irina Turcu

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e approfondire la loro conoscenza dei prodotti e tecnologie Microsoft.

    LinkedIn

    lunedì 23 gennaio 2012 18:51