ID do artigo: 913721 - Última revisão: quinta-feira, 22 de novembro de 2007 - Revisão: 1.4 Como implementar os recursos de navegação inteligente no ASP.NET 2.0
Nesta páginaINTRODUÇÃONavegação inteligente é substituída no Microsoft ASP.NET 2.0 e não é suportada pelo Atendimento Microsoft. Este artigo descreve como implementar os recursos de navegação inteligente no ASP.NET 2.0. Mais InformaçõesEm versões anteriores do ASP.NET, você pode habilitar navegação inteligente usando a propriedade Page.SmartNavigation . Quando você definir a propriedade Page.SmartNavigation como true , os seguintes recursos de navegação inteligente são habilitados:
Como manter a posição de rolagemPara manter a posição de rolagem de uma página da Web depois de postback, use a propriedade Page.MaintainScrollPositionOnPostBack . Para obter mais informações sobre a propriedade Page.MaintainScrollPositionOnPostBack , visite o seguinte site da Web Microsoft Developer Network (MSDN):http://msdn2.microsoft.com/en-us/library/system.web.ui.page.maintainscrollpositiononpostback.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.maintainscrollpositiononpostback.aspx)
Como manter o foco do elementoPara manter o foco do elemento em uma página da Web durante a navegação, use o método Page.SetFocus . Para obter mais informações sobre o método Page.SetFocus , visite o seguinte site da MSDN:http://msdn2.microsoft.com/en-us/library/system.web.ui.page.setfocus.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.setfocus.aspx)
Como manter apenas o estado página da Web mais recente na pasta de histórico do navegador da WebPara impedir que um usuário voltando para páginas da Web visitadas anteriormente, você deve evitar páginas da Web visitadas sejam adicionados para a pasta de histórico do navegador da Web. Além disso, você deve evitar postbacks geradas por controles de servidor do ASP.NET sejam adicionados para a pasta de histórico do navegador da Web. Se apenas o estado de página da Web mais recente é mantido e, se não páginas da Web na pasta de histórico do navegador da Web, Voltar não está disponível.Por design, você não pode modificar a pasta de histórico do navegador da Web por meio de programação. Para contornar essa restrição, use um dos seguintes métodos. Método 1: Desativar o cache do navegador Web e usar variáveis de sessãoSe você desabilitar o cache do navegador Web, o Microsoft Internet Explorer mantém somente ponteiros para as páginas da Web visitadas na pasta de histórico do navegador da Web. Internet Explorer não mantém o conteúdo real para páginas da Web. Portanto, quando um usuário clicar em Voltar , o navegador da Web deve enviar uma solicitação página para o servidor Web. Usando variáveis de sessão ASP.NET, você pode escrever um algoritmo que determina se o usuário deve ser capaz de exibir a página solicitada. Se devem ocorrer problemas no aplicativo da Web quando um usuário exibir a página solicitada, o servidor Web pode redirecionar o navegador da Web para a página atual em vez disso. Portanto, nada parece acontecer quando o usuário clicar em Voltar .Para desativar o cache do navegador Web, use um dos seguintes métodos:
Método 2: Usar um quadro oculto em uma página da WebEsse método se parece com o mecanismo é usado internamente pelo navegação inteligente. Crie uma página da Web que contém uma moldura visível e um quadro oculto. O exemplo de código HTML a seguir demonstra como fazer isso.Método 3: Use o método location.replaceCrie uma página da Web que executa um script do lado do cliente que chama o método location.replace . Nesse caso, o navegador da Web carrega o conteúdo de uma URL na janela ativa. Porque o conteúdo é substituído na janela ativa, o navegador da Web não considera essa substituição seja navegação entre páginas da Web. Portanto, não há entradas são adicionadas para a pasta de histórico do navegador da Web. O exemplo de código HTML a seguir demonstra como usar o método location.replace .http://msdn2.microsoft.com/en-us/library/ms536712.aspx
(http://msdn2.microsoft.com/en-us/library/ms536712.aspx)
Método 4: Use o método window.history.forwardCrie uma página da Web que executa um script do lado do cliente que chama o método window.history.forward . Nesse caso, o navegador da Web avança automaticamente uma página na pasta de histórico do navegador da Web. Portanto, os postbacks posteriores são adicionadas para a pasta de histórico do navegador da Web. Se um usuário clicar em Voltar , o usuário é redirecionado para a página da Web atual.Você pode usar o método window.history.forward juntamente com o método location.replace . Quando você usar esses métodos juntos, navegação entre páginas da Web e postbacks são tratados corretamente. Para obter mais informações sobre o método window.history.forward , visite o seguinte site da MSDN: http://msdn2.microsoft.com/en-us/library/ms536426.aspx
(http://msdn2.microsoft.com/en-us/library/ms536426.aspx)
Método 5: Modificar a lógica de aplicativo da WebModificar a lógica de aplicativo da Web para funcionar corretamente quando um usuário clicar em Voltar . O aplicativo da Web deve manter a integridade de todos os dados enviados e a integridade do estado do usuário quando o usuário clicar em Voltar .Como minimizar o efeito de cintilação que pode ocorrer durante a navegaçãoQuando um usuário exibe uma página da Web em um aplicativo ASP.NET que usa controles de servidor, o usuário pode haver um efeito de cintilação. O efeito de cintilação pode ocorrer quando o usuário altera o valor de um controle. Se o controle gera um postback, o navegador envia uma solicitação para um novo estado de página da Web para o servidor Web. Quando o novo estado de página da Web é processado no navegador da Web, o efeito de cintilação pode ocorrer.Há não maneiras simples para eliminar esse efeito cintilação, porque a página da Web deve ser processada novamente. Normalmente, esse comportamento é notável para o usuário. Observação Quando a velocidade de conexão entre o cliente da Web e o servidor Web é muito rápida, o efeito de cintilação pode ser imperceptível. Para minimizar o efeito de cintilação, minimizar o número de postbacks ou eliminar postbacks. Para fazer isso, use um dos seguintes métodos, conforme apropriado para sua situação. Método 1: Usar o Gerenciador de retorno de chamada do cliente ASP.NET 2.0Use o Gerenciador de retorno de chamada do cliente ASP.NET 2.0 para permitir que as solicitações de envio de páginas da Web para o servidor Web sem usar um postback completo. Porque os retornos de chamada cliente não incluem dados de postback, retornos de chamada do cliente não forçar a página da Web inteira para ser atualizado no navegador da Web. Isso minimiza o efeito de cintilação que pode ocorrer durante a navegação.Para obter mais informações sobre o Gerenciador de retorno de chamada do cliente ASP.NET 2.0, visite o seguinte site da MSDN: http://msdn.microsoft.com/msdnmag/issues/06/00/ASPNET20Overview/default.aspx
(http://msdn.microsoft.com/msdnmag/issues/06/00/ASPNET20Overview/default.aspx)
Para obter mais informações sobre como implementar retornos de chamada do cliente sem usar uma nova postagem, visite o seguinte site da MSDN: http://msdn2.microsoft.com/en-us/library/ms178208.aspx
(http://msdn2.microsoft.com/en-us/library/ms178208.aspx)
Método 2: Usar um quadro oculto em uma página da WebCrie uma página da Web que contém uma moldura visível e um quadro oculto. Para obter mais informações sobre como fazer isso, consulte Método 2 na seção "Como manter apenas o estado página da Web mais recente na pasta de histórico do navegador da Web".ReferênciasPara obter mais informações sobre a propriedade Page.SmartNavigation que foi substituída no ASP.NET 2.0, visite o seguinte site da MSDN: http://msdn2.microsoft.com/en-us/library/system.web.ui.page.smartnavigation.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.smartnavigation.aspx)
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 913721
(http://support.microsoft.com/kb/913721/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesObtenha Ajuda AgoraTraduções deste artigo
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



Voltar para o início