Como fazer uma barra de progresso baseada no processamento de um métodos

.NET

03/04/2013

Senhores(as),

Gostaria de saber se alguém tem uma dica de como implementar uma barra de progresso em .NET baseada no processamento de um envio de e-mail em lote.

Imagine que tenho mais de mil e-mails para enviar numa apliacao web. Preciso exibir para o usuário uma barra de progresso que indique a percentagem do processamento.

Usar simplesmente o progress bar do Ajax é complicado, porque ele nao tem bons parametros.

Queria algo que fosse mais real de acordo com o processamento.

Até mais.
Frederico Filho

Frederico Filho

Curtidas 0

Respostas

Valter Furtado

Valter Furtado

03/04/2013

thread??
você sabe a quantidade total... e a cada "pacote" enviado, atualizaria o registro no banco de dados com a quantidade enviada...

pensei em fzer assim uma vez.
GOSTEI 0
Frederico Filho

Frederico Filho

03/04/2013

Na verdade até já iniciei uma solução com thread...mas estou amadurecendo a ideia ainda..

Meu receio é fazer algo errado e comprometer o servidor..

A ideia também é não ter de ir ao banco para consultar o progresso..pq ai teria ainda mais processamento.
GOSTEI 0
Valter Furtado

Valter Furtado

03/04/2013

Acho (nao tenho certeza pq não mecho com thread tem um tempo) que você monta uma fila, e se for assim, você consegue consultar a quantidade de threads que foram executadas...

Ou você poderia atualizar uma variável dentro da thread e aí executaria... mas acho que a melhor solução é, quando você clicar em "ENVIAR" seus e-mails, você criaria os pacotes e montaria as threads, e aí de sempre que ela terminasse você gravaria o processo no banco e aí no seu sistema você vai consultar o banco de dados para saber o andamento da tarefa...

Se so essa consulta for sobrecarregar o servidor... troca de servidor rs... talvez você cria uma thread com outras dentro (num sei se dá) e aí de acordo com a quantidade de threads ainda em espera você saberia qual a porcentagem executada...
GOSTEI 0
POSTAR