ASP.NET – Obtendo o nome da página corrente

Postado em 03/11/2008 07:11:59 por Tomás Vásquez

Parace um pouco estranho, mas geralmente dá mais trabalho é obter as informações mais óbvias e básicas. Bibliotecas e mais bibliotecas fornecem informações sobre tudo, mas o básico geralmente está além do trivial.

Uma dessas informações que me forçou a uma pesquisa na web foi como obter o nome físico da página em que estava trabalhando. O nome físico mesmo, por exemplo, Default.aspx. Nada mais óbvio não?

Pois bem, a linha de código não óbvia que resolver este problema é esta:

// pega o nome do arquivo da página corrente
string pageFileName = System.IO.Path.GetFileName(HttpContext.Current.Request.FilePath);

Bom, uma vez conseguida a informação, a pergunta que fica é, onde poderíamos ou até deveríamos usá-la? Uma situação que vivi por exemplo foi a de trabalhar com o controle MultiView. Como ele se baseia em várias Views que devem ser definidas no momento de mostrar seu conteúdo, pode ser necessária uma estrutura bem montada para fazer a troca das Views, com por exemplo, via QueryString. Neste cenário, seria necessário saber o nome da página corrente para fazer o redirecionamento correto com a QueryString montada. Claro que o nome da página poderia ser informado diretamente, mas no caso de ser necessário renomear a página por qualquer motivo, seria um problema ter que lembrar de corrigir todas as strings no código que a contém.

É isso. Bom proveito!

Tomás

  1. 2 comentários para “ASP.NET – Obtendo o nome da página corrente”

  2. Por Lucas Braz em 04/12/2008 14:12:15 | Responder

    Obrigado pela dica!!!!

  3. Por Albert Lima em 04/03/2010 11:03:33 | Responder

    Dica 100%. Estava utilizando um metodo onde tinha que dar um substring, maior POG

Você precisa ser um usuário registrado para inserir um comentário. Faça seu login clicando aqui