Como: Redirecionar Users to Another página

Você pode desejar redirecionar usuários de uma página ASP.NET para outra página da Web.Por exemplo, você pode fazê-lo como parte de um formulário.

Existem várias maneiras de redirecionar páginas, como as seguintes:

  • Configurando a página para remeter à outra página Nesse cenário, o usuário clica em um botão que você configurou para remeter à uma pagina diferente.Esse cenário é útil para formulários de múltiplas páginas.De qualquer forma, é necessário interação com o usuário.Para obter detalhes, consulte:Postagem entre Páginas em Páginas da Web do ASP.NET.

  • Usando o navegador dinamicamente Nesse cenário, você envia um comando ao navegador do usuário que faz o navegador recuperar uma página diferente.Isso te permite redirecionar à outra página através de programação.De qualquer forma, o redirecionamento causa uma nova solicitação (um HTTP GET), e qualquer dado postado a partir da página de origem é perdido.

Usando dinamicamente um método do lado servidor Nesse cenário, o servidor simplesmente transfere o contexto para outra página.A vantagem é que você poder compartilhar informações de contexto entre páginas.A desvantagem é que o navegador do usuário não sabe sobre a transferência, assim o histórico do navegador não é atualizado.Se o usuário atualizar a página, podem ocorrer resultados inesperados.Para detalhes sobre compartilhamento de contexto de página durante uma transferência do servidor, veja Como: Passar valores entre páginas da Web do ASP.NET.

Redirecionando um usuário para outra página utilizando o navegador

  1. Coloque a propriedade do objeto BufferOutputResponse para true.

  2. Chame o método do objeto RedirectResponse, passando à ele a URL da página que você deseja redirecionar os usuários.

    O seguinte exemplo de código mostra como redirecionar uma página baseado no conteúdo de uma variável local UserLanguage, que foi definida em outro lugar.

    Response.BufferOutput = True
    If UserLanguage = "English" Then
        Response.Redirect("https://www.microsoft.com/gohere/look.htm")
    ElseIf UserLanguage = "Deutsch" Then
        Response.Redirect("https://www.microsoft.com/gohere/look_deu.htm")
    ElseIf UserLanguage = "Español" Then
        Response.Redirect("https://www.microsoft.com/gohere/look_esp.htm")
    End If
    
    Response.BufferOutput = true;
    if (UserLanguage == "English")
    {
        Response.Redirect("https://www.microsoft.com/gohere/look.htm");
    }
    else if (UserLanguage == "Deutsch")
    {
        Response.Redirect("https://www.microsoft.com/gohere/look_deu.htm");
    }
    else if (UserLanguage == "Español")
    {
        Response.Redirect("https://www.microsoft.com/gohere/look_esp.htm");
    }
    

Para redirecionar usuários para outra página utilizando um método do lado servidor

  • Chame o método Transfer, passando à ele o nome da página para a qual você deseja redirecionar os usuários.

    O seguinte exemplo de código mostra como redirecionar para outra página.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
            Server.Transfer("Page2.aspx", True)
    End Sub
    
    protected void Button1_Click(object sender, System.EventArgs e)
    {
       Server.Transfer("Page2.aspx", true);
    }
    

Consulte também

Tarefas

Como: Passar valores entre páginas da Web do ASP.NET