public static ItemDePagina ObterPaginaPorUrl(string url) { ItemDePagina item = null; /* Aqui você pesquisa na entidade pela descrição, passando o parâmetro url. */ /* Este é o ponto mais importante da lógica, que é onde você vai pesquisar o item de acordo com as suas regras de negócio. */ /* Depois você monta um objeto ItemDePagina (no caso, item) e o devolve. */ return(item); }
protected override IHttpHandler GetHttpHandler(RequestContext requestContext) { var url = requestContext.HttpContext.Request.Path.TrimStart('/'); if (!string.IsNullOrEmpty(url)) { ItemDePagina item = GerenciadorDeRedirecionamento.ObterPaginaPorUrl(url); if (item != null) { MontarRequisicao(item.Controller ?? "Login", item.Action ?? "Login", item.ConteudoId.ToString(), requestContext); } } return(base.GetHttpHandler(requestContext)); }