196 messaggi dal 02 agosto 2007
Non so se sia il forum migliore per mettere questo post.....comunque vi spiego il mio problema.

Nella mia pagina web ho una dataGrid in cui visualizzo la lista degli inserimenti che effettuo tramite la form presente nella stessa pagina.
Come proprietà della pagina ho messo :

private IList listaDifettosita = new ArrayList();

E ogni volta che faccio un inserimento aggiungo alla lista l'elemento inserito.
Il fatto è che mi visualizza solo l'ultimo(e quindi un solo elemento).

Ho notato che al Page_Load della pagina la lista mi risulta sempre vuota(questa verifica l'ho fatta tramite log per capire il problema).

Qual'è l'errore?
CIAOOOO

Massimiliano
3.168 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

la lista che crei non viene persistita da nessuna parte quindi ad ogni postback viene rigenerata. prova a mettere la lista nel viewstate.
HTH
.

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
196 messaggi dal 02 agosto 2007
Mi faresti un esempio?
Perchè il problema per me rimane dove inizializzare quella lista
Ti ringrazio!

Massimiliano
3.168 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,
al prerender

viewstate["lista"] = mylist;

al load
if (viewstate["lista"] == null) viewstate["lista"] = new ArrayList(); ArrayList list = (ArrayList)viewstate["lista"];

più o meno dovrebbe andare.

HTH
.

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
492 messaggi dal 08 gennaio 2007
Ciao, prima o cancellato il post visto che Stefano è moolto più veloce della mia 56k su gprs , comunque nel caso potresti persistere la lista nella Session:
Session["MiaLista"]=tuoArrayList;

poi nel momento che devi inizializzarla, la inizializzi solo se non è stata ancora creata:

if(Session["MiaLista"]!=null)
tuoarraylist=new arraylist;
else
tuoarraylist=(ArrayList)Session["MiaLista"];
... poi ci fai quello che vuoi

Mi sorge una domanda, perchè è meglio il ViewState? se si vogliono risparmiare risorse sul server a sto punto non sarebbe meglio una Property nel Profile?

ciao
Mi sorge una domanda, perchè è meglio il ViewState?
In un ambiente di cluster o in una web garden la session non è condivisa tra le macchine e/o i vari application domain, oltre al fatto di essere molto onerosa in performance, il che ti obbliga ad usare un qualcosa di trasversale, in questo caso il viewstate va benissimo, a condizione che il dato inserito al suo interno non sia pesante.
Se non vuoi usare il viewstate puoi pensare a rendere trasversale la cache e/o la session, ma entriamo in un discorso molto più complesso e lungo.
Cmq esistono almeno 10 buoni motivi percui la session non andrebbe usata  .
Ciauz

imperugo
Microsoft MVP
myblog : http://www.tostring.it
492 messaggi dal 08 gennaio 2007
Ciao, beh, se lanci il sasso, non nascondere la mano no?
Aiutami a capire, quali sarebbero?

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.