none
Consulta QueryString RRS feed

  • Pregunta

  • Hola amigos como estan?? Soy nuevo en el foro y queria hacerles una consulta ...

    Tengo una pagina principal WebForm1.aspx y otra llamada WebForm2.aspx, y de WebForm1 redirecciono a WebForm2 pasandole a esta ultima parametros o variables a traves de la URL ... Esos valores recibidos en la pagina WebForm2 los muestro en 2 label's .. Mi consulta es si hay alguna manera de modificar los valores recibidos de una Query String, modificandolos en dicha coleccion ... Les paso el codigo para q me entiendan bien ...

    WebForm1.aspx

    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="WebForm1.aspx.vb" Inherits="_Default" %>
    
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    
    <head runat="server">
    
     <title>Pasaje de variables a traves de la url</title>
    
    </head>
    
    <body>
    
     <form id="form1" runat="server">
    
     <div>
    
      Name <asp:TextBox ID="txtName" runat="server" /> <br />
    
      Last Name <asp:TextBox ID="txtLastName" runat="server" /> <br /><br />
    
      <asp:Button id="BtnSummit" runat="server" Text="Submit"/>
    
     </div>
    
     </form>
    
    </body>
    
    </html>
    
    

    WebForm1.aspx.vb

    Partial Class _Default
    
     Inherits System.Web.UI.Page
    
    
    
     Protected Sub BtnSummit_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
    
     Handles BtnSummit.Click
    
      Response.Redirect("WebForm2.aspx?Name=" & Me.txtName.Text & "&LastName=" & Me.txtLastName.Text)
    
     End Sub
    
    End Class
    
    

    WebForm2.aspx

    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="WebForm2.aspx.vb" Inherits="WebForm2" %>
    
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    
    <head runat="server">
    
     <title>Pasaje de variables a traves de la url</title>
    
    </head>
    
    <body>
    
     <form id="form1" runat="server">
    
     <div>
    
      Datos recibidos de WebForm.aspx: <br /><br />
    
      
    
      Nombre: <asp:Label ID="lblNombre" runat="server" /> <br />
    
      Apellido: <asp:Label ID="lblApellido" runat="server" /> <br /><br />  
    
      <asp:Button ID="BtnCambiarValores" runat="server" 
    
       Text = "Cambiar Valores" />  
    
     </div>
    
     </form>
    
    </body>
    
    </html>
    
    

    WebForm2.aspx.vb 

    Partial Class WebForm2
    
     Inherits System.Web.UI.Page
    
    
    
     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
    
     Handles Me.Load
    
      If Not IsPostBack Then
    
       Me.lblNombre.Text = Request.QueryString(0).ToString
    
       Me.lblApellido.Text = Request.QueryString(1).ToString
    
      End If
    
     End Sub
    
    
    
     Protected Sub BtnCambiarValores_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
    
     Handles BtnCambiarValores.Click
    
      Request.QueryString("Name") = "Otro Nombre" ' ES POSIBLE HACER ESTO ???
    
      Me.lblNombre.Text = Request.QueryString("Name")
    
      Request.QueryString("LastName") = "Otro Apellido"
    
      Me.lblApellido.Text = Request.QueryString("LastName")
    
     End Sub
    
    End Class
    
    

     Desde ya muchas gracias por su ayuda,

    Saludos !!!

    PD: capaz postee en el foro no debido cualquier cosa mueve el theread, sepan disculpar . Gracias :)

    miércoles, 28 de abril de 2010 13:02

Respuestas

  • Hola.

     

    No entiendo muy bien tu pregunta pero veamos si no me equivoco, si ya tenemos las variables en los Label's para que quieres cambiar el valor o es mas si lo que quieres es que en el Label se vea otro nombre (que no sea el que ha traído el querystring) porque no lo colocas de frente es decir 

     Me.lblNombre.Text = "Otro Nombre" 
    
     Me.lblApellido.Text = "Otro Apellido"

    Porque el quieres modificar el valor en el QuryString?, los nuevos valores los quieres enviar nuevamente? Porque no creas nuevamente la Url con los nuevos valores? algo como esto ...

     Response.Redirect("WebForm2.aspx?Name=" & Me.lblName.Text & "&LastName=" & Me.lblLastName.Text)


    miércoles, 28 de abril de 2010 13:51