Array
(
)

Como eu percorro um CheckListBox

Pjava
   - 11 abr 2013

Bem, eu tenho uma tabela de triagem de documentos. Nessa tela eu preciso selecionar para o mesmo ID várias tarefas. Como é necessário fazer no mesmo ID, então normalizei o BD e criei a tabela de Tarefas. Como eu faço então para gravar as tarefas selecionadas no CheckBoxList? Exemplo: Na triagem Nro. 4(ID=4) foram selecionadas 3 tarefas, por exemplo:
Subsídio,Liminar e Sentença. Então, na tabela de Tarefas deveria estar assim:
ID ID_Triagem Tarefa
1 1 Subsídio
2 1 Liminar
3 1 Sentença
Como eu faço para percorrer cada item checado e gravar no meu BD? Uso LINQ.

Pjava
   - 12 abr 2013

Percorrer eu já fiz, agora o que eu preciso é ir gravando em cada iteração do loop for do meu CheckBoxList. Eu fiz assim:
for (int i = 0; i < _lista.Items.Count; i++)
{
if (_lista.Items[i].Selected)
{
cmmd.Parameters.AddWithValue("idcadastro", _cadastro);
cmmd.Parameters.AddWithValue("nmtarefa", _lista.Items[i].Value);
cmmd.ExecuteNonQuery();
}
}

Agora eu faço para gravar. Dessa forma só grava o primeiro item selecionado, e nesse exemplo eu tenho três.

0
|
0

Joel Rodrigues
   - 12 abr 2013

Faça o debug do código e veja o que está sendo passado como parâmetro, verifique o Value de cada item.

0
|
0

Pjava
   - 12 abr 2013

Então Joel, ele grava o primeiro item selecionado e apartir do segundo item, ele vai até o ExecuteNonQuery, mas não grava o segundo item e já pula para o Finally. Isso é que está no momento.

0
|
0

Joel Rodrigues
   - 12 abr 2013

Acho que está dando uma exceção, não?
Limpe os parâmetro em cada iteração do loop:
#Código

for (int i = 0; i < _lista.Items.Count; i++)
{
cmmd.Parameters.Clear();
if (_lista.Items[i].Selected)
{
cmmd.Parameters.AddWithValue("idcadastro", _cadastro);
cmmd.Parameters.AddWithValue("nmtarefa", _lista.Items[i].Value);
cmmd.ExecuteNonQuery();
}
}

0
|
0

Pjava
   - 12 abr 2013

Era isso mesmo. Pode fechar e se eu for colocar na conta essas ajudas de vocês, caraca! 100 anos de trampo não pagava. Obrigado por tudo.

0
|
0

Joel Rodrigues
   - 12 abr 2013

Show de bola, PJava. Fico feliz que tenha resolvido o problema.
Um abraço e até a próxima.
Estou marcando este tópico como Concluído.

0
|
0