gandalf1986 Posted May 7, 2008 Report Share Posted May 7, 2008 Boas é o seguinte , quero passar uma variavel inteiro para outra página , tenho um menu com o codigo que estou a utilizar é o seguinte : Sub MyList_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) Handles MyList.ItemCommand Dim CategoriaID As Integer MyList.SelectedIndex = e.Item.ItemIndex CarregaCategorias() CategoriaID = MyList.DataKeys(e.Item.ItemIndex) Response.Redirect("Categorias.aspx? CategoriaID =" + CategoriaID) End Sub End Class E na Página categorias tenho : Sub CarregaCategoriasArtigos(ByVal categoriaid As Integer) Dim conn As New SqlConnection((ConfigurationManager.ConnectionStrings("SitedeJogosConnectionString").ConnectionString)) Dim sql2 As String sql2 = "SELECT CategoriaArtigoID,Nome FROM CategoriasArtigos " sql2 &= "WHERE CategoriaID=" & categoriaid Dim cmd2 As New SqlCommand(sql2, conn) Dim dr2 As SqlDataReader conn.Open() dr2 = cmd2.ExecuteReader() DataList2.DataSource = dr2 DataList2.DataBind() dr2.Close() conn.Close() End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim categoria1 As Integer = Request.QueryString("CategoriaID") CarregaCategoriasArtigos(categoria1) End Sub End Class O objectivo passa pelo seguinte tenho dois datalists , um na página Menu.ascx com um datalist carregado por categorias , e outro datalist em categorias , o utilizador ao carregar no link das categorias aparece os produtos relacionados com essa categorias , se alguem poder ajudar , agradeço com os melhores , cumprimentos Link to comment Share on other sites More sharing options...
Hellblazer Posted May 16, 2008 Report Share Posted May 16, 2008 Boas, Sempre podes utilizar o session do tipo: Session.Add("Variavel", Variavel) e depois quando a quizeres ir buscar na outra pagina basta fazeres: VariavelNaNovaPagina = Session("Variavel") Ou entao sempre podes guardar isso num cookie mas a certos explorers que nao permitem a gravação de cookies 😄 Boa sorte 😄 There are two ways to write error-free programs; only the third one works. Link to comment Share on other sites More sharing options...
Tiago Salgado Posted May 19, 2008 Report Share Posted May 19, 2008 No teu post mostraste como tas a fazer...mas fiquei sem perceber se n era assim que querias ou se tava a dar-te erro! Link to comment Share on other sites More sharing options...
JoaoRodrigues Posted May 19, 2008 Report Share Posted May 19, 2008 Além de que o título do teu post é completamente irrelevante à questão. Devias mudar isso para a tua dúvida em concreto, não só para teres mais ajuda, como para er mais fácil a posteriores pesqiusas. Link to comment Share on other sites More sharing options...
DanielAmorim Posted May 19, 2008 Report Share Posted May 19, 2008 Uma forma que tens para passar informação entre páginas é usar o Cross-Page Posting, da infraestrutura ASP.Net. Basicamente esta técnica permite aceder à página anterior e consultar as suas propriedades publicas. Então podes guardar a informação que desejas consultar na página seguinte em propriedades e na nova página acedes a página anterior: Dim sourcePage As <tipo da página> sourcePage = CType(PreviousPage, <tipo da página>) Vê melhor aqui: http://msdn.microsoft.com/en-us/library/ms178139.aspx Esta solução tem como desvantagem a necessidade de carregar a página anterior... A ideia que o Hellblazer deu é utilizar o estado de sessão para passar informação entre as páginas. É uma possibilidade também, mas eu pessoalmente não gosto muito. Ao utilizar estado de sessão corro o risco de os pedidos serem serializados 🙂 para que isto aconteça basta que dois pedidos tenham a mesma chave de sessão e recorram ao estado de sessão. Acho que o estado de sessão deve ser utilizado em situações em que é mesmo necessário. Daniel Amorim VP for xRTML http://www.xrtml.org http://www.realtime.co Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now