Erro de índice fora do intervalo
04/04/2013
0
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
tbl_Triagem ramo = new tbl_Triagem();
ramo.id_recurso = Int16.Parse(reader[0].ToString());
ramo.dt_cadastro = Convert.ToDateTime(reader[1].ToString());
ramo.cpf_autor = reader[2].ToString();
ramo.nm_autor = reader[3].ToString();
ramo.num_doc = reader[4].ToString();
sequencia.Add(ramo);
}
grid.Columns[0].HeaderText = "ID Recurso";==>> Erro dá aqui(no começo da lista)
grid.Columns[1].HeaderText = "Data de Triagem";
grid.Columns[2].HeaderText = "CPF/CNPJ Autor";
grid.Columns[3].HeaderText = "Nome do Autor";
grid.Columns[4].HeaderText = "Num. Documento";
grid.DataSource = sequencia;
grid.DataBind();
O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção.
Nome do parâmetro: index
Pjava
Posts
04/04/2013
Joel Rodrigues
04/04/2013
Frederico Filho
Inspecione no Watch e vj quantos itens vc tem no reader...
Tenha a certeza de acessar o indice que contenha registro..
Qlq coisa..se os dados variarem de consulta pra consulta..vc pode fazer um if..pra consultar se tem item no indice em questao antes de acessar o dado.
05/04/2013
Joel Rodrigues
05/04/2013
Valter Furtado
tbl_Triagem ramo = null; while (reader.Read()) { ramo = new tbl_Triagem(); ramo.id_recurso = reader[0] != DbNull.Value ? Int16.Parse(reader[0].ToString()) : 0; ramo.dt_cadastro = reader[1] != DbNull.Value ? Convert.ToDateTime(reader[1].ToString()) : DateTime.Today; ramo.cpf_autor = reader[2] != DbNull.Value ? reader[2].ToString() : ""; ramo.nm_autor = reader[3] != DbNull.Value ? reader[3].ToString() : ""; ramo.num_doc = reader[4] != DbNull.Value ? reader[4].ToString() : ""; sequencia.Add(ramo); }
10/04/2013
Pjava
10/04/2013
Joel Rodrigues
10/04/2013
Pjava
Bem, achei melhor criar em Design Time os nomes da coluna. Então fui em Edit Column do grid e autogeratecolumn eu coloquei em false e acrescentei alguns BoundField. Bem agora eu preciso atribuir cada coluna criada a um campo da tabela que no meu caso eu tenho uma lista vinda do BD, já que uso Linq para isso. Como eu atribuo cada coluna dessa criada a um item da lista?
Clique aqui para fazer login e interagir na Comunidade :)