Boas, estou com um ligeiro problema numa estrutura do tipo List<>. Será que me podem ajudar?
O codigo é o seguinte:
Ora bem, a função preencheLista recebe um ArrayList que contem mensagens de email. A seguir no foreach cada mensagem de email vai ser separada e tratada, atraves da função Split, para assim retirar os campos que interessam de cada mensagem de email.
Cada instancia da classe assume o valor do campo do email separado pela função Split, no final o objecto objt com cada instancia preenchida, é adicionado ao fim da lista (lista.Add).
Agora, supondo que o ArrayList continha tres mensagens de email, a List deveria ter 3 objectos diferentes do tipo manipulacaoReclamacoes, ou seja, 3 "descricao" diferente, 3 nomeProduto diferente, etc..
O problema é que quando vizualizo o conteudo da List, constato que ela contem 3 objectos iguais, ou seja, por exemplo: apresenta-me 3 vezes o conteudo do ultimo objecto objt que lhe foi adicionado. (ou melhor, apresenta-me 3 vezes cada instancia da classe, mas com o valor do ultimo objt adicionado (List.Add)).
Será que me podem ajudar?
Obrigado a todos
O codigo é o seguinte:
Código:
class manipulacaoReclamacoes
{
private string descricao;
private string nomeAvatar;
private string idAvatar
private string data;
private string nomeProduto;
List<manipulacaoReclamacoes> lista = new List<manipulacaoReclamacoes> ();
manipulacaoReclamacoes objt;
....
public void preencheLista(ArrayList mensagens )
{
if(objt ==null)
objt = new manipulacaoReclamacoes();
foreach (string msg in mensagens)
{
int index = msg.IndexOf("\r\n\r\n");
string str = msg.Substring(index);
str = str.Trim();
string[] str1 = str.Split(';');
objt.descricao = str1[0];
objt.nomeAvatar = str1[1];
objt.idAvatar = str1[2];
objt.data = str1[3];
objt.nomeProduto = str1[4];
lista.Add(objt);
}
Ora bem, a função preencheLista recebe um ArrayList que contem mensagens de email. A seguir no foreach cada mensagem de email vai ser separada e tratada, atraves da função Split, para assim retirar os campos que interessam de cada mensagem de email.
Cada instancia da classe assume o valor do campo do email separado pela função Split, no final o objecto objt com cada instancia preenchida, é adicionado ao fim da lista (lista.Add).
Agora, supondo que o ArrayList continha tres mensagens de email, a List deveria ter 3 objectos diferentes do tipo manipulacaoReclamacoes, ou seja, 3 "descricao" diferente, 3 nomeProduto diferente, etc..
O problema é que quando vizualizo o conteudo da List, constato que ela contem 3 objectos iguais, ou seja, por exemplo: apresenta-me 3 vezes o conteudo do ultimo objecto objt que lhe foi adicionado. (ou melhor, apresenta-me 3 vezes cada instancia da classe, mas com o valor do ultimo objt adicionado (List.Add)).
Será que me podem ajudar?
Obrigado a todos
Última edição pelo moderador: