Session com ArrayList
Tema: Programação (Asp.Net + C#)
Nível: Básico
Boa noite para todos!
Hoje gostaria de compartilhar uma solução muito legal e útil, principalmente para aqueles que estão criando uma loja virtual.
O assunto que vêm a ser discutido, trata-se de como atribuir em uma Session um Array, onde contenha diversas informações. Bom, isso é muito útil, pois imagine você estando desenvolvendo uma loja virtual, logo precisará de um carrinho de compras onde irá armazenar as informações dos itens que o usuário está selecionando, sendo assim, não seria nada prático, bonito nem ao menos profissional, você sair criando um monte de Session, cada uma com deterninada informação.
Pensando nisso, tai uma bela alternativa, criar uma Session ‘pai’ onde armazene todas as informações que necessito, para assim ter meu carrinho de compra e fornecer ao usuário informações úteis sobre sua compra.
Então mâos na massa!
1) Primeiramente iremos criar um ArrayList (para quem não conhece, neste post não irei falar sobre as características do ArrayList):
ArrayList Meu_Array = new ArrayList();
2) Em seguida, vamos adicionar ao nosso ArrayList criado, duas posições (0,1) com os dados de um suposto TextBox do seu Form:
Meu_Array.Add(SuaTextBox1.Text);
Meu_Array.Add(SuaTextBox2.Text);
3) Logo após, iremos atribuir a uma Session o nosso ArrayList:
Session["Minha_Session"] = Meu_Array;
Feito isso, você já possui uma Session na qual possui um ArrayList armazenado.
Abaixo darei um exemplo somente para conferirmos o resultado disso tudo na tela (browser).
Meu_Array = (ArrayList)Session["Minha_Session"];
for (int i = 0; i <= Meu_Array.Count-1; i++){
Response.Write(Meu_Array[i].ToString()+”<br>”);
}
Para aqueles que ainda não tem costume de lidar com Array’s, para acessarmos uma determinada posição deste nosso ArrayList (meu post), podemos fazer da seguinte maneira:
Meu_Array = (ArrayList)Session["Minha_Session"];
string Minha_Variavel = Meu_Array[1].ToString();
OBS: No mundo dos Array’s posição 0 significa posição 1, sendo assim, Meu_Array[0] não significa estar acessando o conteúdo na posição 0 e sim na posição 1.
Logo temos: ‘Minha_Variavel’ com o valor da ‘SuaTextBox2′.
Bom, espero que possa ser útil as informações compartilhadas. Dúvidas e sugestões são bem-vindas.
Forte abraço e até a próxima.
jean 2:52 am em Novembro 30, 2008 Link Permanente |
Boa noite,estou querendo fazer exatamente isso.
So que to criando um site de vende de lanche e vc pode montar o lanche
Exemplo, temos uma pagina com paes,preciso quando o usuario escolher qual pão ele deseja e ele clicar,ira salvar em um array,não tenho ideia de como fazer isso.Pensei em usar ajax,javascript simples(mas nao consegui criar o array no javascript).
Você poderia me ajudar
felippem 1:25 pm em Novembro 30, 2008 Link Permanente |
Olá Jean,
indepedente da linguagem que você estiver trabalhando, o ideal seria você criar como no exemplo, uma session com ‘n’ posições’ onde estas posições carreguem array’s com ‘n’ posições tambem. Daí assim você poderá em cada posição deste array, guardar as características do pão que o autor (usuário) escolheu.
Detalhe um pouco mais o seu estado atual de desenvolvimento que a gente tenta dar uma força.
Qual linguagem está ultlizando?
Um detalhe, session deve ser criada em linguagens server side e não server client, como é o JavaScript.
Abraços.