+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 2 su 2

[ASP.NET] DataBind e passaggio di valori tra pagine

  1. #1
    Balacche4 non è in linea Novello
    Ciao a tutti,
    sto creado un applicazione in asp.net simile a cutenews (scritta in php).
    In pratica voglio visualizzare le news e i commenti associati ad ogni news.

    Per quanto riguarda caricare le news sulla pagina ho usato la seguente funzione (lato vb.net):
        Dim strSql As String = "select * from News order by Data Desc;"
    
            Dim cmd As New SqlDataAdapter(strSql, con)
    
            ''la classe DataSet consente di creare dei contenitori da legare in modo diretto ai controlli dinamici di ASP.Net
            Dim ds As New DataSet
    
            cmd.Fill(ds, 0, 5000, "News")
    
            Me.CloseConnection()
    
            ''binding del dataset sul controllo server Repeater di ASP.Net
            AreaRipetuta.DataSource = ds
            AreaRipetuta.DataBind()
    
    mentre per visualizzarlo (lato aspx) utilizzo quanto segue:

      <asp:Repeater id="AreaRipetuta" runat="server">
                 <ItemTemplate >
                        <%# DataBinder.Eval(Container.DataItem, "Testo").ToString()%>
                        <br />
                        Nome:
                        <%# DataBinder.Eval(Container.DataItem, "Nome").ToString() %>
                        <br />
                        <%# 
     IDNews = Container.DataItem("ID")
                             %>
                        <div style="float: right;"><!-- no full story--> <a href="leggicommenti.aspx">
                        <%# 
     DataBinder.Eval(Container.DataItem, "NCommenti").ToString()
                        %> Commenti</a></div>
                        <br />                    
                        <hr color="#C41E3A"><br><br><div style="width:100%; margin-bottom:30px;">
                 </ItemTemplate>
           </asp:Repeater>
    
    Vorrei settare il valore dell'id della news, e passarlo alla pagina per visualizzare i commenti associati a questa news
    ho provato a fare così (io avevo pensato di settarlo a livello si sessione)
    ho provato a fare così:
      <%# 
     IDNews = Container.DataItem("ID")
                             %>
    
    ma mi ritorna sempre il valore 0 (IDNews è integer)

    Sapete dirmi dove sbaglio?
    Grazie mille.
    Marco
    Ultima modifica di bumm; 30-04-2012 10:37  Motivo: tag asp.net

  2. #2
    L'avatar di marco.andreoli
    marco.andreoli non è in linea Scolaretto
    Ciao

    Semplicemente quando cambi la pagina la variabile va persa, poichè nel ciclo di vita di una pagina tale variabile viene inizializzata ogni volta. Potresti usare la session

    Session("idNews") = Container.DataItem("ID")
    
    ℹ️ Leggi di più su marco.andreoli ...

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Passaggio di immagini tra due pagine aspx.
    Da guil nel forum ASP 3, ASP .Net
    Risposte: 1
    Ultimo Post: 24-03-2016, 08:46
  2. Passaggio di dati tra due pagine
    Da Fapic nel forum ASP 3, ASP .Net
    Risposte: 4
    Ultimo Post: 01-07-2010, 11:07
  3. Passaggio valori
    Da angelowina nel forum Visual Basic .Net
    Risposte: 4
    Ultimo Post: 14-04-2008, 23:34
  4. Risposte: 0
    Ultimo Post: 13-08-2007, 15:54
  5. Risposte: 3
    Ultimo Post: 28-07-2006, 17:11