Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Passaggio Parametri

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    176

    Passaggio Parametri

    Ho fatto in questo modo:

    <aspataList runat="server" DataSource='<%#Prova( "DataBinder.Eval(Container.DataItem,ID_Count)" ) %>'>

    Non mi restituisce nulla.....

    Ricordo che il metodo accetta una stringa come parametro da passare.
    ma anche se lo cambio in Int fa lo stesso

    Ho fatto cosi:
    <aspataList runat="server" DataSource='<%#Prova( "32") %>'>
    Mi restituisce tutti i post quindi è corretto.


    Ho fatto in questo modo:

    <aspataList runat="server" DataSource='<%#Prova( "DataBinder.Eval(Container.DataItem,"ID_Count" )") %>'>
    Mi dice che mi manca una parentesi



    La strada sembra essere quella buona a mio avviso ma come posso fare????

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    4,127
    <aspataList runat="server" DataSource='<%#Prova( "DataBinder.Eval(Container.DataItem,ID_Count)" ) %>'>

    forse cosi

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    176

    Re: Passaggio Parametri

    Originariamente inviato da dobrio
    Ho fatto in questo modo:

    <aspataList runat="server" DataSource='<%#Prova( "DataBinder.Eval(Container.DataItem,ID_Count)" ) %>'>

    Non mi restituisce nulla.....

    Ricordo che il metodo accetta una stringa come parametro da passare.
    ma anche se lo cambio in Int fa lo stesso
    Gia fatto come detto sopra

  4. #4
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Dovrebbe essere un problema di ordine di esecuzione degli eventi, se la datasource del datalist la imposti nel codice e non nel file.aspx non dovrebbero esserci problemi.
    Fammi sapere
    Ciao
    Legnetto

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    176
    Purtroppo mi è impossibile!.
    Il DataList in questione è contenuto in un'altro DataList quindi l'id non lo vede.
    es NomeDataList.DataSource=DATASET;
    Per quello l'ho fatto all'interno del codice

  6. #6
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Avevo paura che fosse così visto che utilizzavi container..
    Mi sa che allora sarà dura.
    Se il datalist non è complesso, puoi sempre optare per la costruzione a "manina" della tabella(il datalist in fondo è quello)in puro html utilizzando uno stringbuilder.

    Ciao
    Lengetto

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    176
    hai qualche esempio???
    Non ho molta esperienza...
    grazie mille comunque ciao!!!

  8. #8
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Ecco:
    codice:
    Dim sb As New StringBuilder()
    sb.Append("<TABLE style=" & Chr(34) & "FONT-SIZE: x-small; MARGIN: 0px;WIDTH: 100%; BORDER-COLLAPSE: collapse;HEIGHT:275px;BACKGROUND-COLOR: #bdc7e6" & Chr(34) & " borderColor=" & Chr(34) & "navy" & Chr(34) & " cellSpacing=" & Chr(34) & "0" & Chr(34) & " cellPadding=" & Chr(34) & "0" & Chr(34) & " rules=" & Chr(34) & "all" & Chr(34) & " align=" & Chr(34) & "center" & Chr(34) & " border=" & Chr(34) & "1" & Chr(34) & "><TR>")
    sb.Append("<TD class=" & Chr(34) & "1" & Chr(34) & ">Destinatari</TD></TR>")
    sb.Append("</TABLE>")
    Response.Write(sb.ToString)
    oppure fai una function e metti:
    Return sb.ToString
    Chiaramente puoi fare anche un ciclo per mettere quello che vuoi.
    Ciao
    Legnetto

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    176
    Ti espongo il mio problema.
    Ho due tabelle nel database mysql, una con tutti i post, l'altra con tutti i messaggi.
    Per visualizzare queste tabelle ho usato un datalist ed un metodo che mi restituisce tutta la tabella in base ad una certa query sottoforma di dataset.
    All'interno di questo datalist ne ho messo un'altro dove mi dovrebbe contare tutti i messaggi ricevuti in base all'id del post.
    L'id del post ovviamente è uguale anche sui messaggi.
    Ho pensato bene quindi di far passare un parametro (Che sarebbe l'id) ad un metodo che mi restuisce un dataset con il totale dei messaggi per post.
    Si sa quindi che non è possibile mettere il datasource all'interno del codice c# in quanto non vede il secondo datalist contenuto nel primo
    Quindi ho fatto come sopra elencato.
    Ecco il mio metodo.

    public DataSet Prova(string ID){
    string connessione="DRIVER={MySQL ODBC 3.51 Driver};" +
    "SERVER=localhost;" +

    "DATABASE=blog;" +
    "UID=root;" +
    "PASSWORD=Dobrio;"+
    "OPTION=3";


    string sql="SELECT ID_Count, Count(*) as conte from messaggi where ID_Count like" + "'" + ID + "'" + "group by ID_Count" ;

    OdbcConnection conn=new OdbcConnection(connessione);
    conn.Open();
    OdbcDataAdapter DA=new OdbcDataAdapter(sql,conn);
    DataSet DS=new DataSet();
    DA.Fill(DS,"Count");
    DataTable tabella=new DataTable();
    tabella=DS.Tables["Count"];

    return DS;


    }
    Non riesco in nessun modo a fare passare l'id a questo benedetto metodo tranne specificandolo cosi.
    In questo caso funziona, peccato ovviamente che il 32 rimane ovvimante fisso per ogni cella

    <aspataList runat="server" DataSource='<%# Prova("32")) %>'>
    <ItemTemplate>
    <%# DataBinder.Eval(Container.DataItem,"conte") %>
    </ItemTemplate>
    </aspataList>


  10. #10
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Prova come ti ho detto, prendi l'html del datalist che crei passandogli il parametro fisso(così hai già il risultato che vuoi). Poi lo copi nel codice e utilizzando lo stringbuilder come ti ho fatto vedere lo fai diventare dinamico passandogli il parametro che ti interessa con il container.dataitem.
    Metti nel datalist una label e come property text metti:
    codice:
    ...Text='<%# GetID_Count(DataBinder.Eval(Container.DataItem, "ID_Count"))%>'
    poi nel codice crei una public function:
    codice:
    Public Function GetID_Count(ByVal ID_Count) As String
    Dim sb As New StringBuilder()
    sb.Append("<TABLE......")
    'ciclo con un reader oppure con una datarelation nel dataset per scorrere tutti i messaggi
    sb.Append("</TABLE>")
    Return(sb.ToString) 
    End Function
    Ho sintetizzato al massimo ma il succo è questo.
    Ciao
    Legnetto

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.