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
Coloque a propriedade do objeto BufferOutputResponse para true.
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); }