ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Enviar Datos Entre páginas ASP.NET


Enviado por   •  15 de Junio de 2013  •  1.244 Palabras (5 Páginas)  •  337 Visitas

Página 1 de 5

Enviar datos entre páginas ASP.NET

8. mayo 2010 13:32 by Oscar.SS in Desarrollo Web // Tags: asp.net // Comentarios (2)

Existen distintas formas de enviar información o datos entre páginas y cada una tiene sus ventajas e inconvenientes. Por lo tanto, debemos evaluar estas consideraciones para determinar como implementar esta funcional en cada caso concreto.

En este artículo vamos a a hablar de un método que estaba disponible en las páginas ASP de antaño y que dejó de estarlo en las versiones ASP.NET 1.x. Con la llegada de ASP.NET 2.0 Microsoft puso a nuestra disposición otra vez la técnica bautizada como Cross Page PostBack (¡telita con el nombre!).

La técnica consiste en hacer que un formulario no se envíe sobre si mismo, es decir, que haga un Submit sobre otra página. Esto se consigue por medio de la propiedad PostBackUrl que implementan los siguientes controles.

<asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="~/PaginaDestino.aspx" />

<asp:ImageButton ID="ImageButton1" ImageUrl="~/img/enviar.png" runat="server" PostBackUrl="~/PaginaDestino.aspx" />

<asp:LinkButton ID="LinkButton1" runat="server" PostBackUrl="~/PaginaDestino.aspx">LinkButton</asp:LinkButton>

Estos controles estarán insertados en nuestra página de origen y como vemos la propiedad PostBackUrl apuntará a la página de destino sobre la que se quiere enviar los datos de la página actual.

Suponiendo que en la página de origen tenemos un campo de texto sobre el que el usuario escribe un texto que será enviado a la página de destino, en el código de esta, obtendremos el valor del campo de texto y lo mostraremos de la siguiente forma.

if (PreviousPage != null)

{

TextBox ControlEncontrado = (TextBox)PreviousPage.FindControl("TextBox1");

if (ControlEncontrado != null)

{

sptexto.InnerText = ControlEncontrado.Text;

}

}

La propiedad PreviousPage de la página de destino nos devuelve una referencia a la página de origen y mediante su método FindControl() buscaremos el control sobre el que escribió el usuario.

Es muy importante, como hemos visto, hacer las comprobaciones oportunas sobre la propiedad PreviousPage y el método FindControl() para evitar sorpresas del tipoSystem.NullReferenceException.

Existe otra forma de utilizar esta técnica que es recomendable si tenemos pensado diseñar la página de origen exclusivamente para compartir información con otras páginas. Consiste en exponer los datos que se quieren compartir o enviar como propiedades públicas. Es decir, en la página de origen haremos algo como esto:

public string NombrePropiedadTexto

{

get

{

return TextBox1.Text;

}

}

public TextBox NombrePropiedadControl

{

get

{

return TextBox1;

}

}

En primer lugar, en la página de destino deberemos escribir la directiva PreviousPageType apuntando a la página de origen.

<%@

...

Descargar como (para miembros actualizados)  txt (6.1 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com