El componente de marco de páginas ASP.NET Web Forms es un modelo de programación escalable en tiempo de ejecución de lenguaje común que se puede utilizar para generar páginas web dinámicamente. El componente ASP.NET Page Framework es una evolución lógica de ASP (la sintaxis proporcionada por ASP.NET es compatible con las páginas existentes) y fue diseñado específicamente para abordar una serie de deficiencias críticas en el modelo anterior. En particular, proporciona la capacidad de crear y utilizar controles de interfaz de usuario reutilizables que encapsulan funciones comunes, reduciendo así la cantidad de código que los desarrolladores de páginas necesitan escribir. Permite a los desarrolladores ser claros y organizados. Construye lógica de página (no "código enredado"; ); las herramientas de desarrollo que utiliza proporcionan potentes capacidades de soporte de diseño de páginas WYSIWYG (lo que ves es lo que obtienes) (el código ASP tradicional existente es opaco). Este artículo presenta algunos conocimientos básicos de las características de las páginas ASP.NET.
Cómo escribir su primera página ASP.NET
Las páginas ASP.NET son archivos de texto con una extensión .aspx. Las páginas se componen de código y etiquetas que se compilan y ejecutan dinámicamente en el servidor para generar contenido de visualización para el navegador (o dispositivo) del cliente solicitante. Se pueden implementar en el árbol del directorio virtual de IIS. Cuando el cliente del navegador solicita un recurso .aspx, el tiempo de ejecución de ASP.NET analiza el archivo de destino y lo compila en una clase de marco .NET. Esta clase luego se puede usar para manejar dinámicamente la solicitud (tenga en cuenta que el archivo .aspx es solo. compilado la primera vez que se accede a él, y la instancia de tipo compilado se puede reutilizar para múltiples solicitudes en el futuro).
No necesitamos modificar el código en el archivo HTML. Solo necesitamos cambiar su extensión a .aspx para crear una página ASP.NET. Por ejemplo, el siguiente ejemplo muestra una página HTML simple que recopila el nombre y la categoría del usuario y envía el formulario de regreso a la página original cuando el usuario hace clic en un botón:
<form action="intro1_vb.aspx" método= "post">
<h3> Nombre: <input id="Nombre" tipo=texto>
Categoría: <seleccione id="Categoría" tamaño=1>
<opción>psicología</opción>
<opción>negocio</opción>
<opción>popular_comp</opción>
</seleccionar>
<tipo de entrada=valor de envío="Búsqueda">
</h3>
</formulario>
Tenga en cuenta: no sucede nada al hacer clic en el botón "Buscar". Esto se debe a que el archivo .aspx solo contiene HTML estático (no contenido dinámico). Por lo tanto, el mismo HTML se envía de vuelta al cliente, lo que provoca que se pierda el contenido del campo del formulario (cuadro de texto y lista desplegable).
Agregue código simple a la página
La sintaxis proporcionada por ASP.NET es compatible con la página ASP. Admite bloques de representación (renderización) de código <% %>, que se pueden mezclar con contenido HTML en archivos .aspx. Estos bloques de código se ejecutarán estrictamente cuando se muestre la página.
El siguiente ejemplo demuestra cómo utilizar bloques de representación <% %> (aumentando el tamaño de fuente cada vez) en HTML:
<form action="intro2_vb.aspx" método="post">
<h3> Nombre: <input id="Nombre" tipo=texto>
Categoría: <seleccione id="Categoría" tamaño=1>
<opción>psicología</opción>
<opción>negocio</opción>
<opción>popular_comp</opción>
</seleccionar>
</h3>
<tipo de entrada=valor de envío="Búsqueda">
<p>
<% Atenuar I como entero
Para I = 0 a 7 %>
<font size="<%=I%>"> Bienvenido a ASP.NET </font> <br>
<%Siguiente %>
</form>
Tenga en cuenta: el bloque de código <% %> del ejemplo anterior se diferencia de ASP en que en realidad será compilado, no interpretado por el motor de script. Esto mejora el rendimiento de ejecución en tiempo de ejecución.
Los desarrolladores de páginas ASP.NET pueden utilizar bloques de código <% %> para modificar dinámicamente la información de salida HTML. Por ejemplo, el siguiente código demuestra cómo utilizar el bloque de código <% %> para interpretar los resultados enviados por el cliente:
<form action="intro3_vb.aspx">
<h3> Nombre: <nombre de entrada="Nombre" tipo=valor de texto="<%=HttpUtility.HtmlEncode(Request.QueryString("Nombre"))%>">
Categoría: <seleccione nombre="Categoría" tamaño=1>
<%
Atenuar I como número entero
Valores tenues (2) como cadena
Valores(0) = "psicología"
Valores(1) = "negocio"
Valores(2) = "popular_comp"
Para I = 0 a Valores.Longitud - 1
%>
<% Si (Request.QueryString("Categoría") = Valores(i)) %>
<opción seleccionada>
<% Si no %>
<opción>
<%Finalizar si %>
<%=Valores(i)%>
</opción>
<%Siguiente %>
</seleccionar>
</h3>
<tipo de entrada=enviar nombre="Búsqueda" valor="Búsqueda">
<p>
<% Si (Not Request.QueryString("Buscar") = Nada) %>
Hola <%=HttpUtility.HtmlEncode(Request.QueryString("Name")) %>, seleccionaste: <%=HttpUtility.HtmlEncode(Request.QueryString("Category")) %>
<%Finalizar si %>
</form>
Tenga en cuenta: aunque los bloques de código <% %> nos proporcionan una forma eficaz de personalizar la información de salida de texto devuelta por las páginas ASP.NET, no proporcionan un modelo de programación HTML claro. El ejemplo anterior muestra que los desarrolladores que solo usan el bloque de código <% %> deben administrar el estado de la página e interceptar los valores que envían ellos mismos.