Pergunta

Javascript?

Metatag atualização?

Response.Redirect (para si mesmo)

Server.Transfer (para si mesmo)

painel de atualização Ajax?

Foi útil?

Solução

Vamos olhar as opções:

Javascript?

Esta coima funciona, contanto que o usuário não tenha desativado-lo.

Metatag atualização?

Um método obsoleto em favor do método Javascript. No entanto, você pode usá-lo como um backup se o usuário tiver desativado Javascript.

Response.Redirect (para si mesmo)

que não funciona, como o navegador não mostraria anyhing útil para o usuário enquanto redirecionando. Além disso, o navegador vai deixar de requerer depois de um certo número de redirecionamentos para proteger o usuário de redirecionamentos infinitos.

Server.Transfer (para si mesmo)

O que não quer trabalhar, como o código no servidor seria apenas de loop sem enviar nada para o navegador. O efeito é o mesmo que ter apenas um loop em seu código.

painel de atualização Ajax?

funciona bem, desde que o usuário tenha não-deficientes Javascript. É basicamente o mesmo que a primeira opção, apenas o Javascript faz o pedido em si em vez de deixar o navegador fazer o pedido.

Outras dicas

Se você pode relatar qualquer tipo de progresso para o usuário, que tendem a correr com um asxh e uma variação de um sempre enquadrar . Adicione um pouco de jQuery UI diálogo e jQuery UI Progress Bar e você tem uma maneira brilhante de prender a atenção dos usuários, enquanto você faz o trabalho pesado no servidor.

Eu dei um exemplo de código em 874.204 que demonstra a técnica.

Se você não pode dar andamento ao usuário, que tendem a ainda usar UI diálogo e pop um "aguarde, processando ..." mensagem com um web Two Dot gif spinny oh compatível.

Confira este artigo sobre Páginas Asynchronous . Aqui é também um exemplo de CodeProject que inclui páginas assíncronas e meta-refresh.

Você pode encontrar um exemplo de implementação deste tipo de funcionalidade no Beer House Iniciado Kit- http://www.asp.net/Downloads/starter-kits/the-beer-house/ .

As páginas SendingNewsLetter.aspx e SendNewsLetter.aspx será útil. Este pode ser um exagero para a sua necessidade though- Ele ainda mostra o progresso da operação de longa duração.

Que tal usar a AJAX WebModalAnchor para aparecer uma janela com um botão de cancelar?

Espero que isso ajude,

Bill

Eu recomendo usar Ajax e exibindo um UpdateProgress que o usuário saiba que ainda está produzindo distância.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top