Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou dando manutenção num site de matérias que foi feito com VS2005.
Na lateral do site tem um dropdownlist que permite o usuário selecionar datas anteriores para ver edições anteriores. A ideia é que quando selecionar uma data, todo o site exiba o conteúdo dessa determinada data.
Estou apanhando um pouco para resolver isso, pois o dropdown está na masterpage. O evento para chamar a rotina e alterar a data está funcionando, meu problema é que antes dele chamar a Classe MasterPage ele chama a classe _Default, mostrando o conteúdo da default com a data anterior.
Como faço para resolver isso? Trocar a data da session antes de executar as rotinas da Default?
Obrigado.
Provavelmente limpando as sessions antes de redirecionar deve resolver o problema.
Desculpe a demora para responder, marquei para acompanhar o tópico mas não recebi email sobre as interações.
Então, o problema é que o redirect não está mudando a página.
Tenho um outro caso com o mesmo problema que deve ficar mais fácil de entender. Vou por os códigos. Na Master tenho um campo de busca simples:
<div class="form-inline">
<div class="form-group">
<asp:TextBox placeHolder="O que procura?" ID="TextBoxPesquisaPalavra" CssClass="form-control" runat="server"></asp:TextBox>
</div>
<div class="form-group">
<asp:Button ID="ButtonBuscaPalava" CssClass="btn btn-default" runat="server" Text="Pesquisar" />
</div>
</div>
E a sub
Protected Sub ButtonBuscaPalava_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonBuscaPalava.Click
Server.Transfer("pesquisa.aspx?tipo=2&pos=0&pchave=" & Me.TextBoxPesquisaPalavra.Text, True)
End Sub
Ou seja, nesse caso simples, o que ele deveria fazer ao clicar no botão é redirecionar para a pesquisa.aspx, mas ele não faz isso. Ao debugar o código vi que ele passa por todos os lugares que deveria passar, mas continua estático, como se nada tivesse acontecido.
Obrigado.
Porque você não usar um Response.Redirect?
Eu estava usando, mudei para testar. Mas nos doia casos da na mesma...
Alguém tem algum modelo de um form na masterPage para eu tentar entender como tem que ser feito? Pois o redirect só não funciona na master.
Consegui resolver.
Ao que percebi, realmente não é possível realizar redirecionamento a partir da MasterPage, apenas das "páginas filho".
Então alterei a estrutura do html da Master. Antes, todo o código da body estava dentro do form com runat=server. Alterei isso, e deixei dentro do form somente o necessário.
Aí meu form de busca ficou fora dessa form e consegui montar um form simples de busca com action direcionando para a página correta.
Não sei se essa era a única solução, mas to pegando código pronto e todos sabemos como isso é irritante, rs...
Obrigado aos que tentaram.
É dificil entender com certeza o que esta acontecendo. Mas algo como dar um redirect para sua página depois de mudar as sessões deve resolver.
Abraços...